/// <summary> /// Process the GameServer requests. /// This method fires the <see cref="OnProcessPacket"/> event to be hooked up by plugins. /// </summary> public DBResult ProcessPlayerRequest(pServer GameServer) { DBResult result = DBResult.NO_ERROR; foreach (DProcessPacket target in OnProcessPacket.GetInvocationList()) { result = target(this, GameServer); if (result != DBResult.NO_ERROR && result != DBResult.PACKET_NOT_HANDLED && result != DBResult.WAIT) { W2Log.Write("CRITICAL ERROR", ELogType.CRITICAL_ERROR); break; } } return(result); }
public DBController(ISynchronizeInvoke syncObj) { Server = new pServer(); BaseMob = new STRUCT_MOB[4]; AccountList = new STRUCT_PUSUER[BaseDef.MAX_MAXUSER]; ItemDayLog = new STRUCT_ITEMLOG[BaseDef.MAX_ITEMLIST]; ChargedGuildList = new int[BaseDef.MAX_CHANNEL, BaseDef.MAX_GUILDZONE]; SinceInit = DateTime.Now; PlayerCount = 0; MySQL = new MYSQL(); g_pGuildWar = new short[BaseDef.MAX_GUILD]; g_pGuildAlly = new short[BaseDef.MAX_GUILD]; g_pGuildInfo = new STRUCT_GUILDINFO[BaseDef.MAX_GUILD]; Config = new ConfigServer(); onTask(); }
public void DisconnectPlayer(pServer GameServer) { W2Log.Write($"O GameServer {GameServer.Index} foi desconectado do servidor.", ELogType.GAME_EVENT); }
/// <summary> /// Insert the GameServer in the game state. This method must be called when the GameServer just stablishes a connection by sending the INIT_CODE to the server. /// </summary> public bool TryInsertPlayer(pServer GameServer) { GameServer.Index = 1; Server = GameServer; return(true); }