Система костей (Advance RP) - Форум Cheat-Master.ru
  • Страница 1 из 1
  • 1
Модератор форума: Phoenixxx_Czar, Getbackthere, [CM]OlegEhtler  
Система костей (Advance RP)
DragonSkull Дата: Вторник, 15.04.2014, 09:07 | Сообщение # 1
Советник
Сообщений: 90
Статус: Offline
Ко всем new
Код
new OpustitRuki[MAX_PLAYERS];
new ZapretDice[MAX_PLAYERS];
new dicetime;
new KostiName[MAX_PLAYERS];
new KostiMoney[MAX_PLAYERS];  


В OnPlayerConnect(playerid)

Код
OpustitRuki[playerid] = 0;
ZapretDice[playerid] = 0;
KostiName[playerid] = 999;
KostiMoney[playerid] = 0;  


К командам

Код
YCMD:dice(playerid, params[], help) // CMD:dice(playerid, params[])  
{     
     if(PlayerInfo[playerid][pLogin] == 0) return true;     
     if(!PlayerToPoint(30.0,playerid,1130.7448,-1.4491,1000.6797)) return SendClientMessage(playerid, -1, "Вы должны находиться в казино!");  
     if(sscanf(params, "ud", params[0],params[1])) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /dice [id игрока] [ставка]");    
     if(params[1] < 100 || params[1] > 500000) return SendClientMessage(playerid, -1, "Минимальная ставка 100$ максимальная 500 000$");    
     if(ZapretDice[params[0]] == 1) return SendClientMessage(playerid, -1, "В данный момент игрок не может играть!");     
     if(PlayerInfo[params[0]][pCash] < params[1]) return SendClientMessage(playerid, -1, "У этого игрока нет столько денег!");     
     if(dicetime > gettime()) return SendClientMessage(playerid, -1, "В данный момент вы не можете играть!");     
     if(!IsPlayerConnected(params[0])) return true;    if(!ProetectorS(6.0, playerid, params[0])) return true;     
     if(params[0] == playerid) return true;     
     format(YCMDstr, sizeof(YCMDstr), "Вы предложили %s бросить кости. Ставка: $%i",Name(params[0]),params[1]);     
     SendClientMessage(playerid, 0x6495EDFF, YCMDstr);     
     format(YCMDstr, sizeof(YCMDstr), "%s предлагает бросить кости. Ставка: $%i",Name(playerid),params[1]);     
     SendClientMessage(params[0], 0x6495EDFF, YCMDstr);     
     SendMes(params[0], COLOR_WHITE, "Нажмите {48FC23}Y {FFFFFF}чтобы согласиться {FF0000}N {FFFFFF}для отказа");     
     ZapretDice[playerid] = 1;     
     KostiName[params[0]] = playerid;    
     KostiMoney[params[0]] = params[1];     
     return true;
}  


в обычные команды OnPlayerCommandText(playerid, cmdtext[])

Код
if(strcmp(cmd, "/dice", true) == 0)  
{  
     if(PlayerInfo[playerid][pLogin] == 0) return true;  
     if(!PlayerToPoint(30.0,playerid,1130.7448,-1.4491,1000.6797)) return SendClientMessage(playerid, -1, "Вы должны находиться в казино!");  
     tmp = strtok(cmdtext, idx);  
     if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /dice [id игрока] [ставка]");  
     new giveplayerid = ReturnUser(tmp);  
     tmp = strtok(cmdtext, idx);  
     if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /dice [id игрока] [ставка]");  
     new price = strval(tmp);  
     if(price  < 100 || price  > 500000) return SendClientMessage(playerid, -1, "Минимальная ставка 100$ максимальная 500 000$");  
     if(ZapretDice[giveplayerid] == 1) return SendClientMessage(playerid, -1, "В данный момент игрок не может играть!");  
     if(PlayerInfo[giveplayerid][pCash] < price) return SendClientMessage(playerid, -1, "У этого игрока нет столько денег!");  
     if(dicetime > gettime()) return SendClientMessage(playerid, -1, "В данный момент вы не можете играть!");  
     if(!IsPlayerConnected(giveplayerid)) return true;  
     if(!ProetectorS(6.0, playerid, giveplayerid)) return true;  
     if(giveplayerid == playerid) return true;  
     format(YCMDstr, sizeof(YCMDstr), "Вы предложили %s бросить кости. Ставка: $%i",Name(giveplayerid),price);  
     SendClientMessage(playerid, 0x6495EDFF, YCMDstr);  
     format(YCMDstr, sizeof(YCMDstr), "%s предлагает бросить кости. Ставка: $%i",Name(playerid),price);  
     SendClientMessage(giveplayerid, 0x6495EDFF, YCMDstr);  
     SendMes(giveplayerid, COLOR_WHITE, "Нажмите {48FC23}Y {FFFFFF}чтобы согласиться {FF0000}N {FFFFFF}для отказа");  
     ZapretDice[playerid] = 1;  
     KostiName[giveplayerid] = playerid;  
     KostiMoney[giveplayerid] = price;  
     return true;  
}  


В OnPlayerKeyStateChange(playerid, newkeys, oldkeys)

Код
if(newkeys == 65536)     
{     
if(KostiName[playerid] < 999)             
{                     
new dice = random(12)+1;                    
new dice1 = random(12)+1;                     
format(YCMDstr, sizeof(YCMDstr), "%s и %s бросили кости. Результат: {CC9900}%i:%i",Name(KostiName[playerid]),Name(playerid),dice,dice1);                     
Proetector(5.0, playerid, YCMDstr, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);                    
if(dice > dice1)                     
{
PlayerInfo[KostiName[playerid]][pCash] += KostiMoney[playerid];                            
PlayerInfo[playerid][pCash] -= KostiMoney[playerid];                             
SendMes(KostiName[playerid], COLOR_GREEN, "Поздравляем, Вы выиграли!");                             
SendMes(playerid, COLOR_ORANGE, "К сожалению, Вы проиграли!");                            
format(YCMDstr, sizeof(YCMDstr), "~g~+%d$", KostiMoney[playerid]);                             
GameTextForPlayer(KostiName[playerid], YCMDstr, 3000, 1);                            
format(YCMDstr, sizeof(YCMDstr), "~r~-%d$", KostiMoney[playerid]);                             
GameTextForPlayer(playerid, YCMDstr, 3000, 1);                             
format(string,sizeof(string), "Выпало: %i",dice1);                             
SetPlayerChatBubble(playerid,string,COLOR_ORANGE,30.0,10000);                             
format(string,sizeof(string), "Выпало: %i",dice);                             
SetPlayerChatBubble(KostiName[playerid],string,TEAM_GROVE_COLOR,30.0,10000);                             
ApplyAnimation(playerid,"CARRY","crry_prtial",4.1,1,0,0,1,1);                             
SetPlayerAttachedObject(playerid, 1, 1851, 1, 0.062400, 0.453750, 0.000000, 0.000000, 94.689310, 0.000000);                            
ApplyAnimation(KostiName[playerid],"CARRY","crry_prtial",4.1,1,0,0,1,1);                            
SetPlayerAttachedObject(KostiName[playerid], 1, 1851, 1, 0.062400, 0.453750, 0.000000, 0.000000, 94.689310, 0.000000);                             
SetTimer("DiceOff", 5000, 0);                             
OpustitRuki[playerid] = 1;                             
OpustitRuki[KostiName[playerid]] = 1;                             
dicetime = gettime() + 5;                             
ZapretDice[playerid] = 0;                             
ZapretDice[KostiName[playerid]] = 0;                             
KostiMoney[playerid] = 0;                             
KostiName[playerid] = 999;                     
}                    
if(dice < dice1)                     
{                             
PlayerInfo[KostiName[playerid]][pCash] -= KostiMoney[playerid];                             
PlayerInfo[playerid][pCash] += KostiMoney[playerid];                             
SendMes(playerid, COLOR_GREEN, "Поздравляем, Вы выиграли!");                             
SendMes(KostiName[playerid], COLOR_ORANGE, "К сожалению, Вы проиграли!");                             
format(YCMDstr, sizeof(YCMDstr), "~g~+%d$", KostiMoney[playerid]);                             
GameTextForPlayer(playerid, YCMDstr, 3000, 1);                             
format(YCMDstr, sizeof(YCMDstr), "~r~-%d$", KostiMoney[playerid]);                             
GameTextForPlayer(KostiName[playerid], YCMDstr, 3000, 1);                             
format(string,sizeof(string), "Выпало: %i",dice1);                             
SetPlayerChatBubble(playerid,string,TEAM_GROVE_COLOR,30.0,10000);                             
format(string,sizeof(string), "Выпало: %i",dice);                             
SetPlayerChatBubble(KostiName[playerid],string,COLOR_ORANGE,30.0,10000);                             
ApplyAnimation(playerid,"CARRY","crry_prtial",4.1,1,0,0,1,1);                             
SetPlayerAttachedObject(playerid, 1 , 1851, 1, 0.062397, 0.453746, 0.000000, 0.000000, 94.689308, 0.000000);                             
ApplyAnimation(KostiName[playerid],"CARRY","crry_prtial",4.1,1,0,0,1,1);                             
SetPlayerAttachedObject(KostiName[playerid], 1, 1851, 1, 0.062400, 0.453750, 0.000000, 0.000000, 94.689310, 0.000000);                             
SetTimer("DiceOff", 5000, 0);                             
OpustitRuki[playerid] = 1;                             
OpustitRuki[KostiName[playerid]] = 1;                            
dicetime = gettime() + 5;                             
ZapretDice[playerid] = 0;                             
ZapretDice[KostiName[playerid]] = 0;                             
KostiMoney[playerid] = 0;                             
KostiName[playerid] = 999;                     
}                     
if(dice == dice1)                     
{                             
SendMes(playerid, COLOR_ORANGE, "Игра закончилась в ничью!");                             
SendMes(KostiName[playerid], COLOR_ORANGE, "Игра закончилась в ничью!");                             
format(string,sizeof(string), "Выпало: %i",dice1);                             
SetPlayerChatBubble(playerid,string,COLOR_LIGHTBLUE,30.0,10000);                             
format(string,sizeof(string), "Выпало: %i",dice);                             
SetPlayerChatBubble(KostiName[playerid],string,COLOR_LIGHTBLUE,30.0,10000);                             
ApplyAnimation(playerid,"CARRY","crry_prtial",4.1,1,0,0,1,1);                            
SetPlayerAttachedObject(playerid, 1 , 1851, 1, 0.062397, 0.453746, 0.000000, 0.000000, 94.689308, 0.000000);                             
ApplyAnimation(KostiName[playerid],"CARRY","crry_prtial",4.1,1,0,0,1,1);                             
SetPlayerAttachedObject(KostiName[playerid], 1, 1851, 1, 0.062400, 0.453750, 0.000000, 0.000000, 94.689310, 0.000000);                            
SetTimer("DiceOff", 5000, 0);                             
OpustitRuki[playerid] = 1;                             
OpustitRuki[KostiName[playerid]] = 1;                             
dicetime = gettime() + 5;                             
ZapretDice[playerid] = 0;                             
ZapretDice[KostiName[playerid]] = 0;                             
KostiMoney[playerid] = 0;                             
KostiName[playerid] = 999;                     
}             
}             
else             
{                     
SendClientMessage(playerid, -1, "Вам никто не предлагал бросить кости");                    
return true;             
}             
return true;
}
if(newkeys == 131072)   
{      
if(KostiName[playerid] < 999)        
{          
KostiName[playerid] = 999;             
KostiMoney[playerid] = 0;         
}  
}  


В конец мода

Код
publics: DiceOff()
{         
for(new idx=0, i=0; idx<cvector_size(players); idx++)         
{                
if(OpustitRuki[i] == 1)                 
{                        
i = cvector_get(players, idx);                         
OpustitRuki[i] = 0;                         
if(IsPlayerAttachedObjectSlotUsed(i,1)) RemovePlayerAttachedObject(i,1);// забрали кубик                         
ClearAnimations(i);                         
ClearAnim(i);                 
}         
}
}  


У меня стоит плагин Vectoral, у кого его нет просто замените на это:

Код
publics: DiceOff()
{         
for(new i=0; i<MAX_PLAYERS; i++)    
{                
if(OpustitRuki[i] == 1)                 
{                    
OpustitRuki[i] = 0;                         
if(IsPlayerAttachedObjectSlotUsed(i,1)) RemovePlayerAttachedObject(i,1);// забрали кубик                         
ClearAnimations(i);                         
ClearAnim(i);                 
}         
}


Птенец^^ Дата: Вторник, 15.04.2014, 14:21 | Сообщение # 2
Новичок
Статус: Offline
Приветствую,Укажите источник
DragonSkull Дата: Вторник, 15.04.2014, 15:13 | Сообщение # 3
Советник
Сообщений: 90
Статус: Offline
Цитата Птенец^^ ()
Приветствую,Укажите источник

Миниул мой с p-i


Andrei_Cernihev Дата: Суббота, 19.04.2014, 22:14 | Сообщение # 4
Новичок
Сообщений: 16
Статус: Offline
Пожалуй +

Любетель Pawno
DragonSkull Дата: Воскресенье, 20.04.2014, 13:18 | Сообщение # 5
Советник
Сообщений: 90
Статус: Offline
Цитата Andrei_Cernihev ()
Пожалуй +

Благадарю


[CM]Fich Дата: Воскресенье, 20.04.2014, 16:11 | Сообщение # 6
Бывалый
Сообщений: 401
Статус: Offline
Баян.

- За баян.

http://cheat-master.ru/forum/117-290887-1#1703396
DragonSkull Дата: Воскресенье, 20.04.2014, 18:28 | Сообщение # 7
Советник
Сообщений: 90
Статус: Offline
Цитата [CM]Fich ()

Украдено с моего миниула с п-и


[CM]Fich Дата: Воскресенье, 20.04.2014, 23:20 | Сообщение # 8
Бывалый
Сообщений: 401
Статус: Offline
Dragon, Ты мне дал минус из-за того что у тебя бомбануло на то что я уже такое выложил сюда? Видно сильно.
Жб отправлю. Тему удаляй так как баян) кстати, жди бан за клевету. так как я не кидала.
DECODE Дата: Четверг, 24.04.2014, 00:48 | Сообщение # 9
Coder
Сообщений: 189
Статус: Offline
Ничего не скажу - класс)

► Оптимизация SCM / SMTA (pawn): http://cheat-master.ru/forum/117-706531-1
► CM Smiles - Mini Chat (v1.0): http://cheat-master.ru/forum/2-706062-1
► [Evolve-RP] - Баг на деньги (история тестера): http://cheat-master.ru/forum/282-709301-1
► Накрутка сообщений в ВКонтакте (new): http://cheat-master.ru/forum/199-709369-1
DragonSkull Дата: Четверг, 24.04.2014, 08:07 | Сообщение # 10
Советник
Сообщений: 90
Статус: Offline
Цитата Valter ()
Ничего не скажу - класс)

Спасибо


[CM]Pierce Дата: Четверг, 27.08.2015, 16:33 | Сообщение # 11
† [CM] Pierce †
Сообщений: 14
Статус: Offline
Не очень, можно лучше и проще.

Вконтакте. http://vk.com/vovavovav
Арни Дата: Четверг, 27.08.2015, 17:15 | Сообщение # 12
Новичок
Сообщений: 18
Статус: Offline
1)Зачем поднимать тему? 2) автор забанен
  • Страница 1 из 1
  • 1
Поиск: