Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include "../include/zcmd.inc"
- #define ForC(%0,%1) for(new %0 = 0; %0 != %1; %0++) if(IsPlayerConnected(%0) && !IsPlayerNPC(%0))
- forward ExplosionTime(playerid);
- new
- string[256],
- aName[MAX_PLAYER_NAME],
- Float:X,
- Float:Y,
- Float:Z,
- bombo[MAX_PLAYERS],
- Float:XbombPos[MAX_PLAYERS],
- Float:YbombPos[MAX_PLAYERS],
- Float:ZbombPos[MAX_PLAYERS],
- bool:Bomb[MAX_PLAYERS],
- ExplosionTimeCount[MAX_PLAYERS],
- TudaSuda[MAX_PLAYERS],
- Authed[MAX_PLAYERS];
- public OnFilterScriptInit()
- {
- return 1;
- }
- CMD:bombshop(playerid, params[])
- {
- GetPlayerName(playerid,aName,sizeof(aName));
- if(GetPlayerMoney(playerid) < 15000)
- {
- return SendClientMessage(playerid, 0xFDE39DAA, "У вас недостаточно средств на приобретение бомбы");
- }
- if(Bomb[playerid] == true)return SendClientMessage(playerid, 0xFDE39DAA,"У вас уже имееться бомба");
- Bomb[playerid] = true;
- format(string, 256, "Игрок: %s приобрел бомбу", aName);
- SendClientMessageToAll(0xFDE39DAA, string);
- GivePlayerMoney(playerid, -15000);
- return 1;
- }
- CMD:create(playerid, params[])
- {
- if(Bomb[playerid] == false)return SendClientMessage(playerid, 0xFDE39DAA,"У вас бомба не наидена введите команду /bombshop");
- ShowPlayerDialog(playerid,700,DIALOG_STYLE_INPUT,"Explosion_Time","Введите время (в секунда) через которое должна взорваться бомба","Отсчет","Отказаться");
- return 1;
- }
- CMD:explosion(playerid, params[])
- {
- if (XbombPos[playerid] == 0 || YbombPos[playerid] == 0 || ZbombPos[playerid] == 0) {
- SendClientMessage(playerid,0xFDE39DAA,"* Ты не установил бомбу!");
- } else {
- CreateExplosion(XbombPos[playerid],YbombPos[playerid],ZbombPos[playerid],7,20);
- XbombPos[playerid] = 0;
- YbombPos[playerid] = 0;
- ZbombPos[playerid] = 0;
- Bomb[playerid] = false;
- DestroyObject(bombo[playerid]);
- }
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid == 700)
- {
- if(!response) SendClientMessage(playerid, 0xFFFFFFFF, "Деиствие отменено");
- new message[196];
- Bomb[playerid] = false;
- new time;
- time = strval(inputtext);
- ExplosionTimeCount[playerid] = time;
- SetTimerEx("ExplosionTime",1000,0,"d",playerid);
- format(message, sizeof(message), "Взрыв бомбы произойдет через %d секунд", time);
- SendClientMessage(playerid, 0xFDE39DAA, message);
- GetPlayerPos(playerid,X,Y,Z);
- XbombPos[playerid] = X;
- YbombPos[playerid] = Y;
- ZbombPos[playerid] = Z;
- bombo[playerid] = CreateObject(1252, X+0.5,Y,Z-0.7,0.0,0.0,0.0);
- Authed[playerid]=false;
- return 1;
- }
- return 0;
- }
- public ExplosionTime(playerid)
- {
- if(!Authed[playerid])
- {
- switch(TudaSuda[playerid])
- {
- case 0:
- {
- format(string,108,"Explosion In %d sec",ExplosionTimeCount[playerid]);
- TudaSuda[playerid] = 1;
- }
- case 1:
- {
- format(string,108,"Explosion In %d sec",ExplosionTimeCount[playerid]);
- TudaSuda[playerid] = 0;
- }
- }
- GameTextForPlayer(playerid, string, 1000, 5);
- ExplosionTimeCount[playerid]--;
- SetTimerEx("ExplosionTime",1000,0,"d",playerid);
- if(ExplosionTimeCount[playerid] < 1)
- {
- format(string,sizeof(string),"Бомба взорвана");
- CreateExplosion(XbombPos[playerid],YbombPos[playerid],ZbombPos[playerid],7,20);
- XbombPos[playerid] = 0;
- YbombPos[playerid] = 0;
- ZbombPos[playerid] = 0;
- Bomb[playerid] = false;
- DestroyObject(bombo[playerid]);
- ExplosionTimeCount[playerid] = 0;
- Authed[playerid]=true;
- }
- }
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- Bomb[playerid] = false;
- return 1;
- }
- public OnPlayerDisconnect(playerid,reason)
- {
- Bomb[playerid] = false;
- return 1;
- }
- public OnFilterScriptExit()
- {
- ForC(i, MAX_PLAYERS)
- {
- Bomb[i] = false;
- DestroyObject(bombo[i]);
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement