changes (#7089)
* a * i guess so * despawnUnitCount, which i forgot to include * changes + despawnUnitRadius field * enter? * no * can you not
This commit is contained in:
@@ -143,3 +143,4 @@ BlueWolf
|
|||||||
[Error_27]
|
[Error_27]
|
||||||
code-explorer786
|
code-explorer786
|
||||||
KayAyeAre
|
KayAyeAre
|
||||||
|
SMOLKEYS
|
||||||
@@ -188,6 +188,8 @@ public class BulletType extends Content implements Cloneable{
|
|||||||
public @Nullable UnitType despawnUnit;
|
public @Nullable UnitType despawnUnit;
|
||||||
/** Amount of units spawned when this bullet despawns. */
|
/** Amount of units spawned when this bullet despawns. */
|
||||||
public int despawnUnitCount = 1;
|
public int despawnUnitCount = 1;
|
||||||
|
/** Random offset distance from the original bullet despawn/hit coordinate. */
|
||||||
|
public float despawnUnitRadius = 0.1f;
|
||||||
|
|
||||||
/** Color of trail behind bullet. */
|
/** Color of trail behind bullet. */
|
||||||
public Color trailColor = Pal.missileYellowBack;
|
public Color trailColor = Pal.missileYellowBack;
|
||||||
@@ -377,6 +379,7 @@ public class BulletType extends Content implements Cloneable{
|
|||||||
}
|
}
|
||||||
createPuddles(b, x, y);
|
createPuddles(b, x, y);
|
||||||
createIncend(b, x, y);
|
createIncend(b, x, y);
|
||||||
|
createUnits(b, x, y);
|
||||||
|
|
||||||
if(suppressionRange > 0){
|
if(suppressionRange > 0){
|
||||||
//bullets are pooled, require separate Vec2 instance
|
//bullets are pooled, require separate Vec2 instance
|
||||||
@@ -436,23 +439,26 @@ public class BulletType extends Content implements Cloneable{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void createUnits(Bullet b, float x, float y){
|
||||||
|
if(despawnUnit != null){
|
||||||
|
for(int i = 0; i < despawnUnitCount; i++){
|
||||||
|
despawnUnit.spawn(b.team, x + Mathf.range(despawnUnitRadius), y + Mathf.range(despawnUnitRadius));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/** Called when the bullet reaches the end of its lifetime or is destroyed by something external. */
|
/** Called when the bullet reaches the end of its lifetime or is destroyed by something external. */
|
||||||
public void despawned(Bullet b){
|
public void despawned(Bullet b){
|
||||||
if(despawnHit){
|
if(despawnHit){
|
||||||
hit(b);
|
hit(b);
|
||||||
|
}else{
|
||||||
|
createUnits(b, b.x, b.y);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!fragOnHit){
|
if(!fragOnHit){
|
||||||
createFrags(b, b.x, b.y);
|
createFrags(b, b.x, b.y);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(despawnUnit != null){
|
|
||||||
for(int i = 0; i < despawnUnitCount; i++){
|
|
||||||
despawnUnit.spawn(b.team, b.x + Mathf.range(0.1f), b.y);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
despawnEffect.at(b.x, b.y, b.rotation(), hitColor);
|
despawnEffect.at(b.x, b.y, b.rotation(), hitColor);
|
||||||
despawnSound.at(b);
|
despawnSound.at(b);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user