89 lines
3.1 KiB
Java
89 lines
3.1 KiB
Java
package electrosphere.net.client.protocol;
|
|
|
|
import electrosphere.client.scene.ClientWorldData;
|
|
import electrosphere.engine.Globals;
|
|
import electrosphere.engine.Main;
|
|
import electrosphere.entity.Entity;
|
|
import electrosphere.entity.EntityUtils;
|
|
import electrosphere.entity.types.creature.CreatureUtils;
|
|
import electrosphere.entity.types.attach.AttachUtils;
|
|
import electrosphere.entity.types.item.ItemUtils;
|
|
import electrosphere.logger.LoggerInterface;
|
|
import electrosphere.net.parser.net.message.AuthMessage;
|
|
import electrosphere.net.parser.net.message.CharacterMessage;
|
|
import electrosphere.net.parser.net.message.EntityMessage;
|
|
import electrosphere.net.parser.net.message.InventoryMessage;
|
|
import electrosphere.net.parser.net.message.LoreMessage;
|
|
import electrosphere.net.parser.net.message.NetworkMessage;
|
|
import electrosphere.net.parser.net.message.PlayerMessage;
|
|
import electrosphere.net.parser.net.message.ServerMessage;
|
|
import electrosphere.net.parser.net.message.SynchronizationMessage;
|
|
import electrosphere.net.parser.net.message.TerrainMessage;
|
|
import org.joml.Vector2f;
|
|
import org.joml.Vector3f;
|
|
|
|
public class ClientProtocol {
|
|
|
|
boolean isLoading = true;
|
|
|
|
boolean hasReceivedWorld = false;
|
|
|
|
public void handleMessage(NetworkMessage message){
|
|
Globals.profiler.beginAggregateCpuSample("ClientProtocol.handleMessage");
|
|
switch(message.getType()){
|
|
case ENTITY_MESSAGE:
|
|
EntityProtocol.handleEntityMessage((EntityMessage)message);
|
|
break;
|
|
case PLAYER_MESSAGE:
|
|
PlayerProtocol.handlePlayerMessage((PlayerMessage)message);
|
|
break;
|
|
case TERRAIN_MESSAGE:
|
|
TerrainProtocol.handleTerrainMessage((TerrainMessage)message);
|
|
break;
|
|
case AUTH_MESSAGE:
|
|
AuthProtocol.handleAuthenticationMessage((AuthMessage)message);
|
|
break;
|
|
case SERVER_MESSAGE:
|
|
ServerProtocol.handleServerMessage((ServerMessage)message);
|
|
break;
|
|
case LORE_MESSAGE:
|
|
LoreProtocol.handleLoreMessage((LoreMessage)message);
|
|
break;
|
|
case CHARACTER_MESSAGE:
|
|
CharacterProtocol.handleCharacterMessage((CharacterMessage)message);
|
|
break;
|
|
case INVENTORY_MESSAGE:
|
|
InventoryProtocol.handleInventoryMessage((InventoryMessage)message);
|
|
break;
|
|
case SYNCHRONIZATION_MESSAGE:
|
|
SynchronizationProtocol.handleSynchronizationMessage((SynchronizationMessage)message);
|
|
break;
|
|
}
|
|
Globals.profiler.endCpuSample();
|
|
}
|
|
|
|
// void handleStatusMessage(StatusMessage message){
|
|
// switch(message.getMessageSubtype()){
|
|
// case READY:
|
|
// isLoading = false;
|
|
// break;
|
|
// }
|
|
// }
|
|
|
|
|
|
|
|
|
|
public void setHasReceivedWorld(boolean hasReceivedWorld){
|
|
this.hasReceivedWorld = hasReceivedWorld;
|
|
}
|
|
|
|
|
|
public boolean isLoading(){
|
|
return isLoading;
|
|
}
|
|
|
|
public boolean hasReceivedWorld(){
|
|
return hasReceivedWorld;
|
|
}
|
|
}
|