Advertisement
Guest User

plik main server

a guest
Aug 4th, 2017
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 5.84 KB | None | 0 0
  1.  
  2.  
  3. local user = {};
  4. local player = [];
  5. local items = ["ITPO_HEALTH_ADDON_04","ITFO_ADDON_RUM","ITFO_ADDON_MEATSOUP"];
  6. local cotrl = {};
  7.  
  8. objects <- {
  9.     id = [],
  10.     el = []
  11. }
  12.  
  13. for(local i = 0; i<getMaxSlots(); i++)
  14. {
  15.     player.append(0);
  16. }
  17.  
  18. function onInit()
  19. {
  20.     addClass("Test",100,100,1000,"ITAR_BLOODWYN_ADDON","ITMW_ADDON_PIR1HAXE","",items);
  21.     addClass("Test2",100,100,1000,"ITAR_THORUS_ADDON","ITMW_ADDON_PIR1HAXE","",items);
  22.     cotrl = Cotroler;
  23.     user = DataControl("localhost","root","","treningowy",3306);
  24.     print(player.len());
  25. }
  26.  
  27. addEventHandler("onInit", onInit);
  28.  
  29. function onPlayerJoin(pid)
  30. {
  31.     callClientFunc(pid,"getIDS",objects.id.len());
  32.     spawnPlayer(pid);
  33.     player[pid] = Gracz();
  34.     cotrl.setClass(pid,player[pid]._playerCID);
  35.  
  36.    
  37. }
  38.  
  39. addEventHandler("onPlayerJoin", onPlayerJoin);
  40.  
  41. function onPlayerRespawn(pid)
  42. {
  43.     cotrl.setClass(pid,player[pid]._playerCID);
  44.     spawnPlayer(pid);
  45. }
  46.  
  47. addEventHandler("onPlayerRespawn", onPlayerRespawn);
  48.  
  49. function onPlayerDead(pid, killer_id)
  50. {
  51.        
  52.         setPlayerRespawnTime(pid,2000);
  53. }
  54. addEventHandler("onPlayerDead", onPlayerDead);
  55.  
  56.  
  57. function cmdRegister(pid, args)
  58. {
  59.     local register = sscanf("ss",args);
  60.     if(player[pid].islogged == false)
  61.     {
  62.         if(!register)
  63.         {
  64.             sendMessageToPlayer(pid,200, 200, 200, "Bledny format danych. Podaj /register login haslo");
  65.         }
  66.  
  67.         else
  68.         {
  69.             //print(register[0]);
  70.             local handle = user.createHandle();
  71.             local result = user.querySelect("*","konta",("WHERE login = '" + register[0] + "'"));
  72.             local numrow = mysql_num_rows(result);
  73.  
  74.             if(numrow != 0)
  75.             {
  76.                 sendMessageToPlayer(pid,200, 200, 200, "Konto juz istnieje o takim loginie. Zaloguj sie /login lub zarejestruj nowe konto /register.");
  77.                
  78.             }
  79.             else
  80.             {
  81.                 local dane = [register[0],register[1],0,0];
  82.                 user.queryInstert("konta","login,pass,classid,groupid",dane,"");
  83.  
  84.             }
  85.             mysql_close(handle);
  86.         }
  87.     }
  88.     else
  89.     {
  90.         sendMessageToPlayer(pid,200, 200, 200, "Nie mozesz zrobic juz konta jak jestes zalogowany!");
  91.     }
  92. }
  93.  
  94. function cmdLogin(pid, args)
  95. {
  96.     local login = sscanf("ss",args);
  97.     if(player[pid].islogged == false){
  98.  
  99.    
  100.     if(!login){
  101.         sendMessageToPlayer(pid,200, 200, 200, "Bledny format danych. Podaj /login login haslo");
  102.     }
  103.  
  104.     else
  105.     {
  106.         local handle = user.createHandle();
  107.         local result = user.querySelect("*","konta",("WHERE login = '" + login[0] + "' AND pass = '" + login[1] + "'"));
  108.         local numrow = mysql_num_rows(result);
  109.    
  110.  
  111.         if(numrow != 0)
  112.         {
  113.             sendMessageToPlayer(pid,200, 200, 200, "Zalogowales sie");
  114.             local dane = mysql_fetch_assoc(result);
  115.             player[pid].islogged = true;
  116.             player[pid]._playerCID = dane["classid"];
  117.             player[pid]._playerGroup = dane["groupid"];
  118.             player[pid]._playerLogin = dane["login"];
  119.             player[pid]._playerPass = dane["pass"];
  120.             setPlayerName(pid,dane["login"]);
  121.             callClientFunc(pid,"clearInv");
  122.             cotrl.setClass(pid,player[pid]._playerCID);
  123.            
  124.         }
  125.         else
  126.         {
  127.            
  128.             sendMessageToPlayer(pid,200, 200, 200, "Brak takiego konta w bazie lub podales zle dane.");
  129.            
  130.         }
  131.         mysql_close(handle);
  132.     }
  133.     }
  134.     else
  135.     {
  136.         sendMessageToPlayer(pid,200, 200, 200, "Juz sie zalogowales!");
  137.     }
  138.    
  139. }
  140.  
  141. function cmdSetCid(pid,args)
  142. {
  143.     local params = sscanf("dd",args);
  144.     if(!params)
  145.     {
  146.         sendMessageToPlayer(pid,200, 200, 200, "Zle parametry. Podaj ID gracza oraz id klasy");
  147.     }
  148.     else
  149.     {
  150.         if(player[params[0]].islogged == false)
  151.         {
  152.             sendMessageToPlayer(pid,200, 200, 200, "Gracz o podanym id nie jest zalogowany");
  153.         }
  154.         else
  155.         {
  156.             player[params[0]]._playerCID = params[1];
  157.             sendMessageToPlayer(params[0],0, 200, 0, (getPlayerName(pid) + "Zmienil ci klase o id " + params[1]));
  158.             callClientFunc(params[0],"clearInv");
  159.             cotrl.setClass(params[0],params[1]);
  160.             local handle = user.createHandle();
  161.             local result = mysql_query(handle, ("UPDATE konta SET classid =" + params[1] + " WHERE login = '" + player[params[0]]._playerLogin + "'"));
  162.             mysql_close(handle);
  163.         }
  164.     }
  165. }
  166.  
  167. function cmdPos(pid)
  168. {
  169.     local pos = getPlayerPosition(pid);
  170.     sendMessageToPlayer(pid,0, 200, 0, ("x: " + pos.x + " y: " + pos.y + " z: " + pos.z));
  171.  
  172. }
  173.  
  174.  
  175. function cmdHelper(pid, cmd, args)
  176. {
  177.     switch(cmd)
  178.     {
  179.         case "register":
  180.             cmdRegister(pid,args);
  181.             break;
  182.         case "login":
  183.             cmdLogin(pid,args);
  184.             break;
  185.         case "setCID":
  186.             cmdSetCid(pid,args);
  187.             break;
  188.         case "pos":
  189.             cmdPos(pid);
  190.             break;
  191.     }
  192. }
  193. addEventHandler("onPlayerCommand", cmdHelper);
  194.  
  195. function onPlayerMessage(pid, message)
  196. {
  197.     print(getPlayerName(pid) + " said: " + message);
  198.     sendPlayerMessageToAll(pid, 255, 255, 255, message);
  199. }
  200.  
  201. addEventHandler("onPlayerMessage", onPlayerMessage);
  202.  
  203.  
  204.  
  205. //Funckje sieciowe
  206.  
  207. function setClassu(pid,cid)
  208. {
  209.     cotrl.setClass(pid,cid);
  210. }
  211.  
  212. function setPlayerCID(pid,arg)
  213. {
  214.     if(player[pid].islogged == false)
  215.     {
  216.         sendMessageToPlayer(pid,200, 200, 200, "Musisz być zalogowany zeby wybrac klase!");
  217.     }
  218.     else
  219.     {
  220.         local handle = user.createHandle();
  221.         local result = mysql_query(handle, ("UPDATE konta SET classid =" + arg + " WHERE login = '" + player[pid]._playerLogin + "'"));
  222.         mysql_close(handle);
  223.     }
  224. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement