mirror of
https://git.krews.org/morningstar/Arcturus-Community.git
synced 2024-11-23 15:20:52 +01:00
Use batch item update packet to sync banzai tile flickering (closes #339)
This commit is contained in:
parent
ae9e6cfa62
commit
1e24df5b61
@ -118,13 +118,13 @@ public final class Emulator {
|
|||||||
Emulator.texts = new TextsManager();
|
Emulator.texts = new TextsManager();
|
||||||
new CleanerThread();
|
new CleanerThread();
|
||||||
Emulator.gameServer = new GameServer(getConfig().getValue("game.host", "127.0.0.1"), getConfig().getInt("game.port", 30000));
|
Emulator.gameServer = new GameServer(getConfig().getValue("game.host", "127.0.0.1"), getConfig().getInt("game.port", 30000));
|
||||||
Emulator.rconServer = new RCONServer(getConfig().getValue("rcon.host", "127.0.0.1"), getConfig().getInt("rcon.port", 30001));
|
//Emulator.rconServer = new RCONServer(getConfig().getValue("rcon.host", "127.0.0.1"), getConfig().getInt("rcon.port", 30001));
|
||||||
Emulator.gameEnvironment = new GameEnvironment();
|
Emulator.gameEnvironment = new GameEnvironment();
|
||||||
Emulator.gameEnvironment.load();
|
Emulator.gameEnvironment.load();
|
||||||
Emulator.gameServer.initializePipeline();
|
Emulator.gameServer.initializePipeline();
|
||||||
Emulator.gameServer.connect();
|
Emulator.gameServer.connect();
|
||||||
Emulator.rconServer.initializePipeline();
|
//Emulator.rconServer.initializePipeline();
|
||||||
Emulator.rconServer.connect();
|
//Emulator.rconServer.connect();
|
||||||
Emulator.badgeImager = new BadgeImager();
|
Emulator.badgeImager = new BadgeImager();
|
||||||
Emulator.getLogging().logStart("Arcturus Morningstar has succesfully loaded. You're running: " + Emulator.version);
|
Emulator.getLogging().logStart("Arcturus Morningstar has succesfully loaded. You're running: " + Emulator.version);
|
||||||
Emulator.getLogging().logStart("System launched in: " + (System.nanoTime() - startTime) / 1e6 + "ms. Using: " + (Runtime.getRuntime().availableProcessors() * 2) + " threads!");
|
Emulator.getLogging().logStart("System launched in: " + (System.nanoTime() - startTime) / 1e6 + "ms. Using: " + (Runtime.getRuntime().availableProcessors() * 2) + " threads!");
|
||||||
|
@ -6,11 +6,12 @@ import com.eu.habbo.messages.outgoing.MessageComposer;
|
|||||||
import com.eu.habbo.messages.outgoing.Outgoing;
|
import com.eu.habbo.messages.outgoing.Outgoing;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
public class ItemsDataUpdateComposer extends MessageComposer {
|
public class ItemsDataUpdateComposer extends MessageComposer {
|
||||||
private final List<HabboItem> items;
|
private final Set<HabboItem> items;
|
||||||
|
|
||||||
public ItemsDataUpdateComposer(List<HabboItem> items) {
|
public ItemsDataUpdateComposer(Set<HabboItem> items) {
|
||||||
this.items = items;
|
this.items = items;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -18,9 +19,12 @@ public class ItemsDataUpdateComposer extends MessageComposer {
|
|||||||
public ServerMessage compose() {
|
public ServerMessage compose() {
|
||||||
this.response.init(Outgoing.ItemsDataUpdateComposer);
|
this.response.init(Outgoing.ItemsDataUpdateComposer);
|
||||||
this.response.appendInt(this.items.size());
|
this.response.appendInt(this.items.size());
|
||||||
|
|
||||||
for (HabboItem item : this.items) {
|
for (HabboItem item : this.items) {
|
||||||
|
this.response.appendInt(item.getId());
|
||||||
item.serializeExtradata(this.response);
|
item.serializeExtradata(this.response);
|
||||||
}
|
}
|
||||||
|
|
||||||
return this.response;
|
return this.response;
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -5,6 +5,7 @@ import com.eu.habbo.habbohotel.games.GameTeamColors;
|
|||||||
import com.eu.habbo.habbohotel.items.interactions.games.battlebanzai.InteractionBattleBanzaiSphere;
|
import com.eu.habbo.habbohotel.items.interactions.games.battlebanzai.InteractionBattleBanzaiSphere;
|
||||||
import com.eu.habbo.habbohotel.rooms.Room;
|
import com.eu.habbo.habbohotel.rooms.Room;
|
||||||
import com.eu.habbo.habbohotel.users.HabboItem;
|
import com.eu.habbo.habbohotel.users.HabboItem;
|
||||||
|
import com.eu.habbo.messages.outgoing.rooms.items.ItemsDataUpdateComposer;
|
||||||
import gnu.trove.set.hash.THashSet;
|
import gnu.trove.set.hash.THashSet;
|
||||||
|
|
||||||
public class BattleBanzaiTilesFlicker implements Runnable {
|
public class BattleBanzaiTilesFlicker implements Runnable {
|
||||||
@ -36,9 +37,10 @@ public class BattleBanzaiTilesFlicker implements Runnable {
|
|||||||
|
|
||||||
for (HabboItem item : this.items) {
|
for (HabboItem item : this.items) {
|
||||||
item.setExtradata(state + "");
|
item.setExtradata(state + "");
|
||||||
this.room.updateItem(item);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this.room.sendComposer(new ItemsDataUpdateComposer(this.items).compose());
|
||||||
|
|
||||||
if (this.count == 5) {
|
if (this.count == 5) {
|
||||||
for (HabboItem item : this.room.getRoomSpecialTypes().getItemsOfType(InteractionBattleBanzaiSphere.class)) {
|
for (HabboItem item : this.room.getRoomSpecialTypes().getItemsOfType(InteractionBattleBanzaiSphere.class)) {
|
||||||
item.setExtradata("0");
|
item.setExtradata("0");
|
||||||
|
Loading…
Reference in New Issue
Block a user