Дмитрий |
Дата: Вторник, 28.05.2013, 16:05 | Сообщение # 1 | Сообщить о нерабочей теме
|
Регистрация: | 03.12.2011
|
Страна: | Российская Федерация |
Репутация: |
14
|
Сообщений: | 1421 |
Награды: |
4
+
|
Статус: |
|
| Автор: Alan_Waket
На мэрии расположено здание ( аптека ), там можно купить аптечку и использовать ее в машине или пополнить себе хп, если по близости нет врачей.
Цитата Ко всем new добавим переменную:
Цитата в public OnPlayerPickUpPickup(playerid, pickupid) добавим:
Код else if(pickupid == apteka[0]) //вход { SetPlayerInterior(playerid, 1); SetPlayerPos(playerid, -2170.5815,638.9775,1052.3750); SetPlayerFacingAngle(playerid, 3.5299); GameTextForPlayer(playerid, "~r~ Apteka", 2000, 1); return 1; } else if(pickupid == apteka[1]) //выход { SetPlayerInterior(playerid, 0); SetPlayerPos(playerid, 1481.3577,-1707.7793,14.0469); SetPlayerFacingAngle(playerid, 272.4807); } else if(pickupid == apteka[2]) { new listitems[] = "{FFFFFF}[1] Витаминка ( 20 Вирт )\n[2] Пустышка ( 10 Вирт )\n[3] Активированный уголь ( 15 Вирт )\n[4] Парацетамол ( 100 Вирт )\n[5] Пивные дрожжи ( 180 Вирт )\n[6] Антибиотики ( 320 Вирт )\n[7] Автомобильная аптечка ( 700 )"; ShowPlayerDialog(playerid,5522,DIALOG_STYLE_LIST,"{66CDAA}Аптека",listitems,"Купить","Закрыть"); } else if(pickupid == apteka[3]) { new listitems[] = "{FFFFFF}[1] Витаминка ( 20 Вирт )\n[2] Пустышка ( 10 Вирт )\n[3] Активированный уголь ( 15 Вирт )\n[4] Парацетамол ( 100 Вирт )\n[5] Пивные дрожжи ( 180 Вирт )\n[6] Антибиотики ( 320 Вирт )\n[7] Автомобильная аптечка ( 700 )"; ShowPlayerDialog(playerid,5522,DIALOG_STYLE_LIST,"{66CDAA}Аптека",listitems,"Купить","Закрыть"); }
Цитата В public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
Код case 5522: { if(response) { if(listitem == 0) { if(PlayerInfo[playerid][pHP] <=80) { if(PlayerInfo[playerid][pCash] < 20) return SendClientMessage(playerid, COLOR_GREY, "{ADAEAD}У вас нет столько денег на руках!"); new Float:health; GetPlayerHealth(playerid,health); SetPlayerHealthAC(playerid, health + 5.0); PlayerInfo[playerid][pCash] -= 20; PlayerInfo[playerid][pHP] += 20; FracBank[0][fKazna] +=20; SendClientMessage(playerid,0xF60000AA,"{FFFFFF}Спасибо за покупку! Не болейте"); } else { SendClientMessage(playerid,COLOR_WHITE,"Вы не нуждаетесь в лечении"); return 1; } } if(listitem == 1) { if(PlayerInfo[playerid][pHP] <=90) { if(PlayerInfo[playerid][pCash] < 10) return SendClientMessage(playerid, COLOR_GREY, "{ADAEAD}У вас нет столько денег на руках!"); new Float:health; GetPlayerHealth(playerid,health); SetPlayerHealthAC(playerid, health + 1.0); PlayerInfo[playerid][pCash] -= 10; PlayerInfo[playerid][pHP] += 10; FracBank[0][fKazna] +=10; SendClientMessage(playerid,0xF60000AA,"{FFFFFF}Спасибо за покупку! Не болейте"); } else { SendClientMessage(playerid,COLOR_WHITE,"Вы не нуждаетесь в лечении"); return 1; } } if(listitem == 2) { if(PlayerInfo[playerid][pHP] <=85) { if(PlayerInfo[playerid][pCash] < 15) return SendClientMessage(playerid, COLOR_GREY, "{ADAEAD}У вас нет столько денег на руках!"); new Float:health; GetPlayerHealth(playerid,health); SetPlayerHealthAC(playerid, health + 15.0); PlayerInfo[playerid][pCash] -= 15; PlayerInfo[playerid][pHP] += 15; FracBank[0][fKazna] +=15; SendClientMessage(playerid,0xF60000AA,"{FFFFFF}Спасибо за покупку! Не болейте"); } else { SendClientMessage(playerid,COLOR_WHITE,"Вы не нуждаетесь в лечении"); return 1; } } if(listitem == 3) { if(PlayerInfo[playerid][pHP] <= 65) { if(PlayerInfo[playerid][pCash] < 100) return SendClientMessage(playerid, COLOR_GREY, "{ADAEAD}У вас нет столько денег на руках!"); new Float:health; GetPlayerHealth(playerid,health); SetPlayerHealthAC(playerid, health + 35.0); PlayerInfo[playerid][pCash] -= 100; PlayerInfo[playerid][pHP] += 35; FracBank[0][fKazna] +=100; SendClientMessage(playerid,0xF60000AA,"{FFFFFF}Спасибо за покупку! Не болейте"); } else { SendClientMessage(playerid,COLOR_WHITE,"Вы не нуждаетесь в лечении"); return 1; } } if(listitem == 4) { if(PlayerInfo[playerid][pHP] <= 45) { if(PlayerInfo[playerid][pCash] < 180) return SendClientMessage(playerid, COLOR_GREY, "{ADAEAD}У вас нет столько денег на руках!"); new Float:health; GetPlayerHealth(playerid,health); SetPlayerHealthAC(playerid, health + 55.0); PlayerInfo[playerid][pCash] -= 180; PlayerInfo[playerid][pHP] += 55; FracBank[0][fKazna] +=180; SendClientMessage(playerid,0xF60000AA,"{FFFFFF}Спасибо за покупку! Не болейте"); } else { SendClientMessage(playerid,COLOR_WHITE,"Вы не нуждаетесь в лечении"); return 1; } } if(listitem == 5) { if(PlayerInfo[playerid][pHP] <= 30) { if(PlayerInfo[playerid][pCash] < 320) return SendClientMessage(playerid, COLOR_GREY, "{ADAEAD}У вас нет столько денег на руках!"); new Float:health; GetPlayerHealth(playerid,health); SetPlayerHealthAC(playerid, health + 70.0); PlayerInfo[playerid][pCash] -= 320; PlayerInfo[playerid][pHP] += 70; FracBank[0][fKazna] +=320; SendClientMessage(playerid,0xF60000AA,"{FFFFFF}Спасибо за покупку! Не болейте"); } else { SendClientMessage(playerid,COLOR_WHITE,"Вы не нуждаетесь в лечении"); return 1; } } if(listitem == 6) { if(PlayerInfo[playerid][pAptechka] == 0) { if(PlayerInfo[playerid][pCash] < 700) return SendClientMessage(playerid, COLOR_GREY, "{ADAEAD}У вас нет столько денег на руках!"); PlayerInfo[playerid][pCash] -= 700; PlayerInfo[playerid][pAptechka] = 1; FracBank[0][fKazna] +=700; SendClientMessage(playerid,0xF60000AA,"{FFFFFF}Спасибо за покупку!"); } else { SendClientMessage(playerid,COLOR_WHITE,"У вас уже есть аптечка"); return 1; } } } else { return 1; } }
Цитата В public OnGameModeInit
Код apteka[0] = CreatePickup(19132,23,1481.5159,-1704.5953,14.0468);//apteka вход apteka[1] = CreatePickup(19132,23,-2170.2478,635.7123,1052.3750);//apteka выход apteka[2] = CreatePickup(1239,2,-2161.1653,640.3580,1052.3817);//apteka пикап 1 apteka[3] = CreatePickup(1239,2,-2158.9829,640.3636,1052.3817);//apteka пикап 2
Цитата И туда же в OnGameModeInit ко всем 3D текстам
Код Create3DTextLabel("{FFA500}Аптека\n{FFBF00}San Andreas",0xBFF600FF,1481.5159,-1704.5953,14.7468,15.0,0,1);
Цитата И снова в OnGameModeInit добавим объекты
Код //=================================== [Аптека] ================== CreateObject(1569,-2171.1000977,639.9299927,1056.5860596,0.0000000,0.0000000,0.0000000); //object(adam_v_door) (1) CreateObject(1569,-2169.6000977,639.9199829,1056.5860596,0.0000000,0.0000000,0.0000000); //object(adam_v_door) (2) CreateObject(1675,1479.9770508,-1697.0080566,16.2059994,0.0000000,0.0000000,0.0000000); //object(wshxrefhse1) (1)
В html потому что [pHP] и PHP не получается соотнести, путаница получается
Цитата В public OnPlayerRegister(playerid, password[]) Код ini_setInteger(File,"Aptechka",PlayerInfo[playerid][pAptechka]);
Цитата В public OnPlayerUpdateRL(playerid) Код ini_setInteger(File,"Atpechka",PlayerInfo[playerid][pAptechka]);
Цитата В public OnPlayerLogin(playerid,password[]) Код ini_getInteger(File,"Aptechka",PlayerInfo[playerid][pAptechka]);
Цитата В public OnPlayerCommandText(playerid, cmdtext[]) добавим команду: Код else if(strcmp(cmd, "/carheal", true) == 0) { if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, -1, "{ADAEAD}Вы не в машине"); if(PlayerInfo[playerid][pAptechka] == 1) { SetPlayerHealthAC(playerid, 100); PlayerInfo[playerid][pHP] = 100; PlayerInfo[playerid][pAptechka] = 0; SendClientMessage(playerid,0xF60000AA,"{FFFFFF}Вы использовали аптечку"); } else { SendClientMessage(playerid,COLOR_WHITE,"У вас нет аптечек"); return 1; } return true; }
[spoiler="Скрины"][/spoiler]
From Russia With Love!
|
|
|
|