admin Дата: Воскресенье, 26.06.2011, 05:02:41 | Сообщение # 1
Группа: Администраторы
Сообщений: 3869
И так в этом уроке я вам расскажу как сделать покупку оружия через диолог окно и так же по пикапу. И так пристуим сразу к делу а именно коду pawn. :)) Верху мода где все #define: добавим: #define DIALOG_ORUCHIE 1 - где 1 это порядковый id диалогового окна идет Дальше добавим переменную new: После этого ищем Code
public OnGameModeInit()
и туда добавим:Code
oruchi = CreatePickup(1318,23,-1620.4330,691.8565,7.1875);
и так тут разберем где 1318 это ид пикапа где 23 это радиус ну его можно не трогать где -1620.4330,691.8565,7.1875 - это координаты пикапа где он будет стоять. Так же кому надо после добавление пикапа кто хочет видеть надпись что типо "Продаются оружия" то добавляем следующие чуть снизу Create3DTextLabel("Продается оружия",0x33AAFFFF,-1620.4330,691.8565,7.1875,20.0,0); где -1620.4330,691.8565,7.1875 это координаты дальше можно не трогать. После этого ищем:Code
public OnPlayerPickUpPickup(playerid, pickupid)
и туда добавим: Code
if(pickupid == oruchi) { ShowPlayerDialog(playerid,DIALOG_ORUCHIE,DIALOG_STYLE_LIST,"Покупка оружия","Дигл \nДубинка \nм4 \nнож \nобрезы \nСнаперская винтовка \nтек9","Купить","Нет"); }
это мы добавили саму диолог окно при выборе покупке оружия когда войдем на пикап.После этого ищем:Code
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
И туда добавим: Code
if(dialogid == DIALOG_ORUCHIE) { if(response) { switch(listitem) { case 0: { if(GetPlayerMoney(playerid) >=1000) //сколько оружия стоит в деньгах { GivePlayerMoney(playerid,-1000); //снимут сколько денег при покупке оружия GivePlayerWeapon(playerid,24,50); //24 - ид оружия, 50 - патроны к оружию SendClientMessage(playerid,COLOR_RED,"Вы купили Deagle"); } else return SendClientMessage(playerid,COLOR_RED,"Недостаточна денег"); } case 1: { if(GetPlayerMoney(playerid) >=500) { GivePlayerMoney(playerid,-500); GivePlayerWeapon(playerid,5,1); SendClientMessage(playerid,COLOR_RED,"Вы купили дубинку"); } else return SendClientMessage(playerid,COLOR_RED,"Недостаточна денег"); } case 2: { if(GetPlayerMoney(playerid) >=5000) { GivePlayerMoney(playerid,-5000); GivePlayerWeapon(playerid,31,1000); SendClientMessage(playerid,COLOR_RED,"Вы купили м4"); } else return SendClientMessage(playerid,COLOR_RED,"Недостаточна денег"); } case 3: { if(GetPlayerMoney(playerid) >=500) { GivePlayerMoney(playerid,-500); GivePlayerWeapon(playerid,4,1); SendClientMessage(playerid,COLOR_RED,"Вы купили нож"); } else return SendClientMessage(playerid,COLOR_RED,"Недостаточна денег"); } case 4: { if(GetPlayerMoney(playerid) >=50000) { GivePlayerMoney(playerid,-50000); GivePlayerWeapon(playerid,26,10000); SendClientMessage(playerid,COLOR_RED,"Вы купили обрезы"); } else return SendClientMessage(playerid,COLOR_RED,"Недостаточна денег"); } case 5: { if(GetPlayerMoney(playerid) >=20000) { GivePlayerMoney(playerid,-20000); GivePlayerWeapon(playerid,34,1000); SendClientMessage(playerid,COLOR_RED,"Вы купили снаперку"); } else return SendClientMessage(playerid,COLOR_RED,"Недостаточна денег"); } case 6: { if(GetPlayerMoney(playerid) >=5000) { GivePlayerMoney(playerid,-5000); GivePlayerWeapon(playerid,32,1000); SendClientMessage(playerid,COLOR_RED,"Вы купили тек9"); } else return SendClientMessage(playerid,COLOR_RED,"Недостаточна денег"); } } } return 1; }
и все сохраняем и компилируем мод свой. Если вы еще хотите добавить оружия то добавьте чуть ниже: Code
case 7: //тут обезательно меняем порядковый ид числа если еще добавили то в место 7 пишем 8 и т.п { if(GetPlayerMoney(playerid) >=5000) { GivePlayerMoney(playerid,-5000); GivePlayerWeapon(playerid,32,1000); SendClientMessage(playerid,COLOR_RED,"Вы купили тек9"); } else return SendClientMessage(playerid,COLOR_RED,"Недостаточна денег"); }
ну и все так by 26_RUSSS
zm-jail.ru Разработка сайта samp-pawno.ru
Сообщение И так в этом уроке я вам расскажу как сделать покупку оружия через диолог окно и так же по пикапу. И так пристуим сразу к делу а именно коду pawn. :)) Верху мода где все #define: добавим: #define DIALOG_ORUCHIE 1 - где 1 это порядковый id диалогового окна идет Дальше добавим переменную new: После этого ищем Code
public OnGameModeInit()
и туда добавим:Code
oruchi = CreatePickup(1318,23,-1620.4330,691.8565,7.1875);
и так тут разберем где 1318 это ид пикапа где 23 это радиус ну его можно не трогать где -1620.4330,691.8565,7.1875 - это координаты пикапа где он будет стоять. Так же кому надо после добавление пикапа кто хочет видеть надпись что типо "Продаются оружия" то добавляем следующие чуть снизу Create3DTextLabel("Продается оружия",0x33AAFFFF,-1620.4330,691.8565,7.1875,20.0,0); где -1620.4330,691.8565,7.1875 это координаты дальше можно не трогать. После этого ищем:Code
public OnPlayerPickUpPickup(playerid, pickupid)
и туда добавим: Code
if(pickupid == oruchi) { ShowPlayerDialog(playerid,DIALOG_ORUCHIE,DIALOG_STYLE_LIST,"Покупка оружия","Дигл \nДубинка \nм4 \nнож \nобрезы \nСнаперская винтовка \nтек9","Купить","Нет"); }
это мы добавили саму диолог окно при выборе покупке оружия когда войдем на пикап.После этого ищем:Code
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
И туда добавим: Code
if(dialogid == DIALOG_ORUCHIE) { if(response) { switch(listitem) { case 0: { if(GetPlayerMoney(playerid) >=1000) //сколько оружия стоит в деньгах { GivePlayerMoney(playerid,-1000); //снимут сколько денег при покупке оружия GivePlayerWeapon(playerid,24,50); //24 - ид оружия, 50 - патроны к оружию SendClientMessage(playerid,COLOR_RED,"Вы купили Deagle"); } else return SendClientMessage(playerid,COLOR_RED,"Недостаточна денег"); } case 1: { if(GetPlayerMoney(playerid) >=500) { GivePlayerMoney(playerid,-500); GivePlayerWeapon(playerid,5,1); SendClientMessage(playerid,COLOR_RED,"Вы купили дубинку"); } else return SendClientMessage(playerid,COLOR_RED,"Недостаточна денег"); } case 2: { if(GetPlayerMoney(playerid) >=5000) { GivePlayerMoney(playerid,-5000); GivePlayerWeapon(playerid,31,1000); SendClientMessage(playerid,COLOR_RED,"Вы купили м4"); } else return SendClientMessage(playerid,COLOR_RED,"Недостаточна денег"); } case 3: { if(GetPlayerMoney(playerid) >=500) { GivePlayerMoney(playerid,-500); GivePlayerWeapon(playerid,4,1); SendClientMessage(playerid,COLOR_RED,"Вы купили нож"); } else return SendClientMessage(playerid,COLOR_RED,"Недостаточна денег"); } case 4: { if(GetPlayerMoney(playerid) >=50000) { GivePlayerMoney(playerid,-50000); GivePlayerWeapon(playerid,26,10000); SendClientMessage(playerid,COLOR_RED,"Вы купили обрезы"); } else return SendClientMessage(playerid,COLOR_RED,"Недостаточна денег"); } case 5: { if(GetPlayerMoney(playerid) >=20000) { GivePlayerMoney(playerid,-20000); GivePlayerWeapon(playerid,34,1000); SendClientMessage(playerid,COLOR_RED,"Вы купили снаперку"); } else return SendClientMessage(playerid,COLOR_RED,"Недостаточна денег"); } case 6: { if(GetPlayerMoney(playerid) >=5000) { GivePlayerMoney(playerid,-5000); GivePlayerWeapon(playerid,32,1000); SendClientMessage(playerid,COLOR_RED,"Вы купили тек9"); } else return SendClientMessage(playerid,COLOR_RED,"Недостаточна денег"); } } } return 1; }
и все сохраняем и компилируем мод свой. Если вы еще хотите добавить оружия то добавьте чуть ниже: Code
case 7: //тут обезательно меняем порядковый ид числа если еще добавили то в место 7 пишем 8 и т.п { if(GetPlayerMoney(playerid) >=5000) { GivePlayerMoney(playerid,-5000); GivePlayerWeapon(playerid,32,1000); SendClientMessage(playerid,COLOR_RED,"Вы купили тек9"); } else return SendClientMessage(playerid,COLOR_RED,"Недостаточна денег"); }
ну и все так by 26_RUSSS Автор - admin Дата добавления - 26.06.2011 в 05:02:41