Szerző Téma: Pénz anticheat  (Megtekintve 820 alkalommal)

Nem elérhető Brand

  • 273
    • Profil megtekintése
Pénz anticheat
« Dátum: 2015. Február 05. - 14:39:55 »
0 Show voters
Sziasztok  :D
Szükségem lenne 1 olyan scriptre ami a becheatelt pénzt levonja és visszaállítja a cheatelés elötti értékre. Viszont ha adminnal adok pénzt / állítom át a játékos pénzét akkor azt ne vonja le. ( Luxadmint használok. ) Előre is köszönöm a segítségeteket. <3
« Utoljára szerkesztve: 2015. Február 05. - 14:56:15 írta ƒlaﻛh »

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
Pénz anticheat
« Válasz #1 Dátum: 2015. Február 05. - 14:56:08 »
+1 Show voters
Egy játékos változóban tárold a pénz összegét, például hogy Money[MAX_PLAYERS], vagy SetPVarInt(playerid, \"Money\", pénzösszeg);
 Viszont akkor már ki kell alakíts egyfajta pénz minirendszert is melyben készítesz egy GivePlayerCash, GetPlayerCash-t is a játékos változóra kapcsolod és már csak annyi a teenődőd hogy time-el megnézed hogy csalt-e pénzt külső programtól vagy nem.
Figyelmeztetés: De akkor minden GivePlayerMoney-t, és GetPlayerMoney-t át kell írj a fórumon különben cheat-nek érzékeli.
A lekérdezős része:
Amikor a játékos bejelentkezett elindítod a timert:
 
SetPVarInt(playerid, \"Timer\", SetTimerEx(\"CheckMoney\", 1000, true, \"i\", playerid));

 
OnPlayerDisconnect alá ha be van jelentkezve:
 
KillTimer(GetPVarInt(playerid, \"Timer\"));

 
Gamemódba valahova pedig ezt kell raknod:
 
forward CheckMoney(playerid);
public CheckMoney(playerid) {
if(!IsPlayerConnected(playerid) || Nincs bejelentkezve) return 1;
if(GetPlayerCash(playerid) != GetPlayerMoney(playerid)) SetPlayerCash(playerid, GetPlayerCash(playerid));
return 1;
}

Nem elérhető Brand

  • 273
    • Profil megtekintése
Pénz anticheat
« Válasz #2 Dátum: 2015. Február 05. - 15:06:44 »
0 Show voters
Köszi a segítséget  ;)

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal