Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "_macros.fos"
- ServerInvisiblePlayers@ serverInvisiblePlayers;
- class ServerInvisiblePlayers
- {
- int[] ip;
- ServerInvisiblePlayers()
- {
- Log("Initializing server invisible table");
- this.ip.resize(0);
- Log("Server invisible players table size: "+ip.length());
- }
- void addPlayer(int id)
- {
- Log("Adding player to invisible table");
- this.ip.resize(ip.length()+1);
- ip[ip.length()-1]=id;
- for(uint i=0; i<ip.length();i++)
- {
- Log("+ invisible id: "+ip[i]);
- }
- }
- void removePlayer(int id)
- {
- Log("Attempting to remove players from invisible payers table");
- for(uint i=0; i<ip.length();i++)
- {
- Log("-- invisible id: "+ip[i]);
- }
- int counter=0;
- int[] ip_tmp = ip;
- ip.resize(ip_tmp.length()-1);
- for(uint i=0; i<ip_tmp.length();i++)
- {
- if(ip_tmp[i]!=id)
- {
- ip[counter]=ip_tmp[i];
- counter++;
- }
- }
- }
- void sendListOfInvisiblePlayersOnLogIn(Critter& player)
- {
- CreateTimeEvent(__FullSecond + REAL_SECOND(1), "cte_runscript", player.Id, false);
- }
- void getAndSetInvisiblePlayers(Critter& player)
- {
- Log("======: get and set invisible players from server, ip size: "+ip.length());
- for(uint i=0; i<ip.length();i++)
- {
- Log("++ invisible id: "+ip[i]);
- }
- Log("Executing client scrit: getAndSetInvisiblePlayers");
- player.RunClientScript("client_main@setInvisiblePlayersFromServerExecute", 0, 0, 0, "", @ip);
- Log("Script exectuted.");
- }
- }
- uint cte_runscript(uint[]@ values)
- {
- Log("Time Event exectuted.");
- Critter@ player = GetCritter(values[0]);
- serverInvisiblePlayers.getAndSetInvisiblePlayers(player);
- return 0;
- }
- void InitServerInvisiblePlayers()
- {
- @serverInvisiblePlayers = ServerInvisiblePlayers();
- }
- void addPlayer(int id)
- {
- serverInvisiblePlayers.addPlayer(id);
- }
- void removePlayer(int id)
- {
- serverInvisiblePlayers.removePlayer(id);
- }
- void getAndSetInvisiblePlayersFromServer(Critter& player)
- {
- serverInvisiblePlayers.getAndSetInvisiblePlayers(player);
- }
- void clientLogIn_SendHimInfoAboutInvisiblePlayers(Critter& player)
- {
- serverInvisiblePlayers.sendListOfInvisiblePlayersOnLogIn(player);
- }
- void getInvisiblePlayersFromServer(Critter& player, int playerID, int firstTime, int p2, string@ commandString, int[]@ param4)
- {
- serverInvisiblePlayers.getAndSetInvisiblePlayers(player);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement