Map submission fixes / Fixed moving units not hitting conveyors

This commit is contained in:
Anuken 2024-10-01 21:53:48 -04:00
parent 8fc821d67b
commit aaa27a0b69
5 changed files with 10 additions and 2 deletions

Binary file not shown.

Binary file not shown.

View File

@ -34,6 +34,7 @@ public class SectorPresets{
testingGrounds = new SectorPreset("testingGrounds", serpulo, 3){{
difficulty = 7;
captureWave = 33;
}};
frozenForest = new SectorPreset("frozenForest", serpulo, 86){{

View File

@ -772,6 +772,13 @@ public class BulletType extends Content implements Cloneable{
}
public @Nullable Bullet create(@Nullable Entityc owner, @Nullable Entityc shooter, Team team, float x, float y, float angle, float damage, float velocityScl, float lifetimeScl, Object data, @Nullable Mover mover, float aimX, float aimY){
return create(owner, shooter, team, x, y, angle, damage, velocityScl, lifetimeScl, data, mover, aimX, aimY, null);
}
public @Nullable Bullet create(
@Nullable Entityc owner, @Nullable Entityc shooter, Team team, float x, float y, float angle, float damage, float velocityScl,
float lifetimeScl, Object data, @Nullable Mover mover, float aimX, float aimY, @Nullable Teamc target
){
if(!Mathf.chance(createChance)) return null;
if(ignoreSpawnAngle) angle = 0;
if(spawnUnit != null){
@ -812,7 +819,7 @@ public class BulletType extends Content implements Cloneable{
bullet.originX = x;
bullet.originY = y;
if(!(aimX == -1f && aimY == -1f)){
bullet.aimTile = world.tileWorld(aimX, aimY);
bullet.aimTile = target instanceof Building b ? b.tile : world.tileWorld(aimX, aimY);
}
bullet.aimX = aimX;
bullet.aimY = aimY;

View File

@ -489,7 +489,7 @@ public class Weapon implements Cloneable{
angle = shootAngle + Mathf.range(inaccuracy + bullet.inaccuracy);
Entityc shooter = unit.controller() instanceof MissileAI ai ? ai.shooter : unit; //Pass the missile's shooter down to its bullets
mount.bullet = bullet.create(unit, shooter, unit.team, bulletX, bulletY, angle, -1f, (1f - velocityRnd) + Mathf.random(velocityRnd), lifeScl, null, mover, mount.aimX, mount.aimY);
mount.bullet = bullet.create(unit, shooter, unit.team, bulletX, bulletY, angle, -1f, (1f - velocityRnd) + Mathf.random(velocityRnd), lifeScl, null, mover, mount.aimX, mount.aimY, mount.target);
handleBullet(unit, mount, mount.bullet);
if(!continuous){