Fixed weapons not being reset on multiplayer connect
This commit is contained in:
@@ -245,7 +245,7 @@ public class Control extends Module{
|
||||
}
|
||||
|
||||
ui.hudfrag.updateItems();
|
||||
ui.weaponfrag.updateWeapons();
|
||||
ui.weaponfrag.update();
|
||||
}
|
||||
|
||||
public void play(){
|
||||
|
||||
@@ -161,10 +161,8 @@ public class NetClient extends Module {
|
||||
});
|
||||
|
||||
Net.handle(StateSyncPacket.class, packet -> {
|
||||
//TODO replace with arraycopy()
|
||||
for(int i = 0; i < packet.items.length; i ++){
|
||||
Vars.control.items[i] = packet.items[i];
|
||||
}
|
||||
System.arraycopy(packet.items, 0, Vars.control.items, 0, packet.items.length);
|
||||
|
||||
Vars.control.setWaveData(packet.enemies, packet.wave, packet.countdown);
|
||||
|
||||
Timers.resetTime(packet.time + (float)(TimeUtils.timeSinceMillis(packet.timestamp) / 1000.0 * 60.0));
|
||||
|
||||
@@ -394,7 +394,7 @@ public class Tutorial{
|
||||
void onSwitch(){
|
||||
if(!Vars.control.getWeapons().contains(Weapon.multigun, true)){
|
||||
Vars.control.getWeapons().add(Weapon.multigun);
|
||||
Vars.ui.weaponfrag.updateWeapons();
|
||||
Vars.ui.weaponfrag.update();
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
@@ -81,7 +81,7 @@ public class DesktopInput extends InputHandler{
|
||||
for(int i = 1; i <= 6 && i <= control.getWeapons().size; i ++){
|
||||
if(Inputs.keyTap("weapon_" + i)){
|
||||
player.weapon = control.getWeapons().get(i - 1);
|
||||
ui.weaponfrag.updateWeapons();
|
||||
ui.weaponfrag.update();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -3,10 +3,10 @@ package io.anuke.mindustry.io;
|
||||
import com.badlogic.gdx.files.FileHandle;
|
||||
import com.badlogic.gdx.utils.Array;
|
||||
import com.badlogic.gdx.utils.TimeUtils;
|
||||
import com.badlogic.gdx.utils.reflect.ClassReflection;
|
||||
import io.anuke.mindustry.Vars;
|
||||
import io.anuke.mindustry.entities.enemies.Enemy;
|
||||
import io.anuke.mindustry.entities.enemies.EnemyType;
|
||||
import io.anuke.mindustry.resource.Weapon;
|
||||
import io.anuke.mindustry.world.Block;
|
||||
import io.anuke.mindustry.world.GameMode;
|
||||
import io.anuke.mindustry.world.Tile;
|
||||
@@ -185,6 +185,10 @@ public class NetworkIO {
|
||||
|
||||
Vars.ui.hudfrag.updateItems();
|
||||
|
||||
Vars.control.getWeapons().clear();
|
||||
Vars.control.getWeapons().add(Weapon.blaster);
|
||||
Vars.ui.weaponfrag.update();
|
||||
|
||||
//enemies
|
||||
|
||||
Entities.clear();
|
||||
|
||||
@@ -68,7 +68,7 @@ public class Save12 extends SaveFileVersion {
|
||||
Vars.control.addWeapon(Weapon.values()[stream.readByte()]);
|
||||
}
|
||||
|
||||
Vars.ui.weaponfrag.updateWeapons();
|
||||
Vars.ui.weaponfrag.update();
|
||||
|
||||
//inventory
|
||||
|
||||
|
||||
@@ -68,7 +68,7 @@ public class Save13 extends SaveFileVersion {
|
||||
Vars.control.addWeapon(Weapon.values()[stream.readByte()]);
|
||||
}
|
||||
|
||||
Vars.ui.weaponfrag.updateWeapons();
|
||||
Vars.ui.weaponfrag.update();
|
||||
|
||||
//inventory
|
||||
|
||||
|
||||
@@ -86,7 +86,7 @@ public class Save14 extends SaveFileVersion{
|
||||
Vars.control.addWeapon(Weapon.values()[stream.readByte()]);
|
||||
}
|
||||
|
||||
Vars.ui.weaponfrag.updateWeapons();
|
||||
Vars.ui.weaponfrag.update();
|
||||
|
||||
//inventory
|
||||
|
||||
|
||||
@@ -125,7 +125,7 @@ public class UpgradeDialog extends FloatingDialog{
|
||||
|
||||
control.removeItems(weapon.requirements);
|
||||
control.addWeapon(weapon);
|
||||
ui.weaponfrag.updateWeapons();
|
||||
ui.weaponfrag.update();
|
||||
run.listen();
|
||||
Effects.sound("purchase");
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ public class WeaponFragment implements Fragment{
|
||||
}
|
||||
}
|
||||
|
||||
public void updateWeapons(){
|
||||
public void update(){
|
||||
weapontable.clearChildren();
|
||||
|
||||
ButtonGroup<ImageButton> group = new ButtonGroup<>();
|
||||
|
||||
Reference in New Issue
Block a user