Merge remote-tracking branch 'origin/master'

This commit is contained in:
Anuken
2023-07-23 16:30:49 -04:00
5 changed files with 17 additions and 3 deletions

View File

@@ -84,6 +84,10 @@ public class EntityGroup<T extends Entityc> implements Iterable<T>{
}
}
public Seq<T> copy(){
return copy(new Seq<>());
}
public Seq<T> copy(Seq<T> arr){
arr.addAll(array);
return arr;

View File

@@ -1324,7 +1324,7 @@ abstract class BuildingComp implements Posc, Teamc, Healthc, Buildingc, Timerc,
//I really do not like that the bullet will not destroy derelict
//but I can't do anything about it without using a random team
//which may or may not cause issues with servers and js
block.destroyBullet.create(this, Team.derelict, x, y, 0);
block.destroyBullet.create(this, block.destroyBulletSameTeam ? team : Team.derelict, x, y, Mathf.randomSeed(id(), 360f));
}
}

View File

@@ -197,7 +197,7 @@ public class PlayerListFragment{
}
//there's generally no reason to team switch outside PvP or sandbox, and it's basically an easy way to cheat
if(state.rules.pvp || state.rules.infiniteResources){
if(!state.isCampaign() && (state.rules.pvp || state.rules.infiniteResources)){
t.button("@player.team", Icon.redo, bstyle, () -> {
var teamSelect = new BaseDialog(Core.bundle.get("player.team") + ": " + user.name);
teamSelect.setFillParent(false);

View File

@@ -170,6 +170,8 @@ public class Block extends UnlockableContent implements Senseable{
public float baseExplosiveness = 0f;
/** bullet that this block spawns when destroyed */
public @Nullable BulletType destroyBullet = null;
/** if true, destroyBullet is spawned on the block's team instead of Derelict team */
public boolean destroyBulletSameTeam = false;
/** liquid used for lighting */
public @Nullable Liquid lightLiquid;
/** whether cracks are drawn when this block is damaged */