04.12.2009, 18:10
Да я тож думал но никак не выходит, без казино можно прожить, а деньги за трюки чет не охото отключать стант мод. Пришлось анти-чит на оружия только сделать
|
Originally Posted by Serafim_sd
про спидхак... сделать логирование типа если скорость игрока в машине больше определенного значения (инфернуса с азотом) то запись вносится в лог... если таких записей несколько в них казаны слабые машины, то видимо ясно что это спидхак...
|
ldx, Float
ldy, Float
ldz, Float:newx, Float:newy, Float:newz) и функции GetPlayerGameSpeed(playerid)/SetPlayerGameSpeed(playerid, Float
peed).
|
Originally Posted by MX_Master
может кто может и лучше, и меньше написать, не знаю, мой античит на деНги такой. НЕПРОВЕРЕНО ! (:
Код:
//
// вставить в начало мода
//
stock playerMoney[MAX_PLAYERS];
stock ac_GivePlayerMoney ( playerid, money )
{
playerMoney[playerid] += money;
ResetPlayerMoney(playerid);
GivePlayerMoney( playerid, playerMoney[playerid] );
}
stock ac_ResetPlayerMoney ( playerid )
{
playerMoney[playerid] = 0;
ResetPlayerMoney(playerid);
}
stock ac_GetPlayerMoney ( playerid )
{
return playerMoney[playerid];
}
forward updatePlayersMoney();
public updatePlayersMoney()
{
for ( new i = 0; i < MAX_PLAYERS; i++ )
if ( IsPlayerConnected(i) )
{
ResetPlayerMoney(i);
GivePlayerMoney( i, playerMoney[i] );
}
}
#define GivePlayerMoney ac_GivePlayerMoney
#define ResetPlayerMoney ac_ResetPlayerMoney
#define GetPlayerMoney ac_GetPlayerMoney
public OnGameModeInit ()
{
// каждые 10 сек каждому онлайн игроку будет выставлено его
// реальное кол-во денег, которое хранится на сервере
SetTimer( "updatePlayersMoney", 10000, 1 );
return 1;
}
|
#define GivePlayerMoney ac_GivePlayerMoney
#define ResetPlayerMoney ac_ResetPlayerMoney
#define GetPlayerMoney ac_GetPlayerMoney
|
Originally Posted by предыдущий текст сообщения
а я вроде и написал в конце кода НЕПРОВЕРНО, хотя это слово почему-то все упустили (: я могу тока идею и примерный вариант подсказать, а если уж не получается у конечного скриптера подтесать скрипт, это печально
стант бонус это ваще неконтролируемая клиентская добавка к бабкам, которую сервер не отслеживает ни коим образом |
if (GetPlayerMoney(i) > playerMoney[i])
{
ResetPlayerMoney(i);
GivePlayerMoney( i, playerMoney[i] );
}
for (new i; i < MAX_PLAYERS; i++)
foreach (Player, i)
{
if (GetPlayerMoney(i) > playerMoney[i])
{
ResetPlayerMoney(i);
GivePlayerMoney( i, playerMoney[i] );
}
}
public UpdatePlayersMoney()
{
new
money;
foreach (Player, i)
{
money = GetPlayerMoney(i);
if (money > playerMoney[i])
{
ResetPlayerMoney(i);
GivePlayerMoney(i, playerMoney[i]);
}
else if (money < playerMoney[i])
{
ac_ResetPlayerMoney(i);
ac_GivePlayerMoney(i, money);
}
}
return 1;
}
