Merlin
Умник
Ув посетители это мой 1 урок в этом раздели
Суть в том что ищешь грибы, их можно продать на рынке есть команда /korzinka, проверить сколько в корзинке грибов... Подобрать грибы можно подойти и нажать на ЛКМ мышки.
Короче что я тут вам говорю сами разберётесь...
Короче что я тут вам говорю сами разберётесь...
Ко всем new
PHP:
enum pInfo
{
pKamar,
};
new PlayerInfo[MAX_PLAYERS][pInfo];
new gribi[98];// Количество грибов которые можно поставить в OnGameModeInit()
new rinok;
new sendername[MAX_PLAYER_NAME];
Дальше в public OnGameModeInit()
PHP:
rinok = CreatePickup(1274,23,0,0,0);
Create3DTextLabel("Рынок: продажа грибов",0xAA3333AA,-1942.9542,238.4766,34.3125,15.0,0,1);
gribi[0] = CreateObject(1602,0,0,0, 0.0, 0.0,0);// тут можно сколько угодно сделать грибов к примеру.
gribi[1] = CreateObject(1602,0,0,0, 0.0, 0.0,0);
gribi[2] = CreateObject(1602,0,0,0, 0.0, 0.0,0);
gribi[3] = CreateObject(1602,0,0,0, 0.0, 0.0,0);
gribi[4] = CreateObject(1602,0,0,0, 0.0, 0.0,0);
gribi[5] = CreateObject(1602,0,0,0, 0.0, 0.0,0);
Дальше в public OnPlayerPickUpPickup(playerid, pickupid)
PHP:
new string[256];
if(pickupid >= gribi[0]&& pickupid <= gribi[61])
{
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "%s достал корзинку", sendername);
SendClientMessage(playerid, COLOR_BLUE, "Покует в корзину грибы");
PlayerInfo[playerid][pKamar] += 1;
ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 6.1, 0, 0, 0, 0, 0,1);
format(string,sizeof(string),"Соброно грибов: {xxxxxx}%d",PlayerInfo[playerid][pKamar]);
SendClientMessage(playerid,0xAA3333AA,string);
return 1;
}
if(pickupid == rinok)
{
ShowPlayerDialog(playerid,1888,DIALOG_STYLE_INPUT,"Рынок","Введите количество грибов собранные вами","ОК","Отмена");
return 1;
}
Дальше идём в public OnPlayerCommandText(playerid, cmdtext[])
PHP:
new cmd[256];
new idx;
new string[364];
cmd = strtok(cmdtext, idx);
if (strcmp("/korzinka", cmdtext, true, 10) == 0)
{
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "[VillageDM]: Â âàøåé êîðçèíêå %d ãðèáîâ",PlayerInfo[playerid][pKamar]);
SendClientMessage(playerid, 0xAA3333AA, string);
SetPlayerChatBubble(playerid,"[VillageDM]: Открыл корзинку",0xAA3333AA,30.0,10000);
return 1;
}
Дальше встовляем в public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
PHP:
if(dialogid == 1888)
{
if(response)
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,1888,DIALOG_STYLE_INPUT,"Рынок","Введите количество грибов которые вы ходите продать","ОК","Отмена");
}
new string[256];
new grib = strval(inputtext);
if (grib > PlayerInfo[playerid][pKamar])
{
SendClientMessage(playerid,0xFFFFFFAA, "У вас нету столько грибов xD");
return 1;
}
if(grib < 1 || grib > 15) { SendClientMessage(playerid,0xFFFFFFAA, "Не менее 1 гриба и не более 15!"); return 1; }
GivePlayerMoney(playerid,grib*10);
PlayerInfo[playerid][pKamar] -=strval(inputtext);
SetPlayerChatBubble(playerid,"Сдает бутылки",0xAA3333AA,30.0,10000);
format(string, sizeof(string), "Вы сдали %d грибов и получили %d$.", grib,grib*10);
SendClientMessage(playerid,0xFFFFFFAA, string);
return 1;
}
Всё готово осталось только добавить в конец мода сток
PHP:
strtok(string[],&idx,seperator = ' ')
{
new ret[128], i = 0, len = strlen(string);
while(string[idx] == seperator && idx < len) idx++;
while(string[idx] != seperator && idx < len)
{
ret[i] = string[idx];
i++;
idx++;
}
while(string[idx] == seperator && idx < len) idx++;
return ret;
}
