#include <a_samp>
#include <sscanf2>
#include <zcmd>
/*
// %d - int - liczba 252
// %f - Float - liczba zmienno przecinkowa 52.25
// %d - prawda/fałsz
// %s - ciąg tekstowy jakiś tekst
// char - jedna literka 'a'
// string "jakis"
*/
//KOLORY
#define COLOR_GREEN 0x6dc066AA
#define COLOR_RED 0xf41111AA
#define COLOR_WHITE 0xffffffAA
#define COLOR_BLUE 0x4c40d6AA
#define COLOR_LEMON 0xc2d61eAA
#define COLOR_ORANGE 0xee8d15AA
#define COLOR_DARKPINK 0xe14169AA
#define COLOR_PINK 0xe76687AA
#define COLOR_PURPLE 0x9b3aa7AA
#define COLOR_GREY 0x898989AA
#define COLOR_AQUA 0x66cdaaAA
#define COLOR_YELLOW 0xdddf1fAA
//takie tam
#undef MAX_PLAYERS
#define MAX_PLAYERS 20
#define DIALOG_GUNSHOP 1
#define DIALOG_TP 2
#define DIALOG_HELP 3
#define DIALOG_NEWBIE 4
#define DIALOG_KILL 5
#define DIALOG_DRUG 6
#define pickup 7
main() {}
//mode
new pickup;
public OnGameModeInit()
{
SetGameModeText("DM v0.1 (extreme)");
pickup = CreatePickup(1242, 2, 2465.03, -1667.45, 13.48, -1); //ganton marker z dragami
AddPlayerClass(7,198.7482,-107.7110,1.5505,90,WEAPON_COLT45,150,WEAPON_FIREEXTINGUISHER,1000,WEAPON_CAMERA,30); // 0 - cywil
AddPlayerClass(266,198.7482,-107.7110,1.5505,90,WEAPON_DEAGLE,80,WEAPON_NITESTICK,1,WEAPON_MP5,400); // 1 - policjant
AddPlayerClass(110,198.7482,-107.7110,1.5505,90,WEAPON_DEAGLE,80,WEAPON_TEC9,500,WEAPON_MOLTOV,2); // 2 - gangster
AddPlayerClass(72,198.7482,-107.7110,1.5505,90,WEAPON_COLT45,150,WEAPON_FIREEXTINGUISHER,1000,WEAPON_RIFLE,30); // 3 - Rolnik
AddPlayerClass(164,198.7482,-107.7110,1.5505,90,WEAPON_SILENCED,90,WEAPON_SHOTGUN,50,WEAPON_TEARGAS,4); // 4 - Ochroniarz
return 1;
}
public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == pickup)
{
ShowPlayerDialog(playerid, DIALOG_DRUG, DIALOG_STYLE_LIST, "Deathmatch v0.1 - System narkotykow", "Kokaina\nHeroina", "Zazyj", "Wyjdz");
}
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid, 198.7482,-107.7110,1.5505);
SetPlayerCameraPos(playerid, 191.2887,-108.0239,1.5489);
SetPlayerCameraLookAt(playerid, 198.7482,-107.7110,3.5505);
SetPlayerFacingAngle(playerid, 90.0000);
switch(classid)
{
case 0:
{
GameTextForPlayer(playerid, "Wybierz klase:~n~~w~Cywil", 2000, 4);
}
case 1:
{
GameTextForPlayer(playerid, "Wybierz klase:~b~Policjant", 2000, 4);
}
case 2:
{
GameTextForPlayer(playerid, "Wybierz klase:~g~Gangster", 2000, 4);
}
case 3:
{
GameTextForPlayer(playerid, "Wybierz klase:~n~~y~Rolnik", 2000, 4);
}
case 4:
{
GameTextForPlayer(playerid, "Wybierz klase:~n~~p~Ochroniarz", 2000, 4);
}
}
return 1;
}
public OnPlayerRequestSpawn(playerid)
{
SetPlayerFacingAngle(playerid, 90.0000);
return 1;
}
public OnPlayerConnect(playerid)
{
return 1;
}
public OnPlayerSpawn(playerid)
{
SetPlayerSkillLevel(playerid, WEAPONSKILL_PISTOL, 1);
SetPlayerSkillLevel(playerid, WEAPONSKILL_SHOTGUN, 11);
SetPlayerSkillLevel(playerid, WEAPONSKILL_MP5, 11);
SetPlayerSkillLevel(playerid, WEAPONSKILL_AK47, 11);
SetPlayerSkillLevel(playerid, WEAPONSKILL_M4, 11);
SetPlayerSkillLevel(playerid, WEAPONSKILL_MICRO_UZI, 1);
SetPlayerSkillLevel(playerid, WEAPONSKILL_DESERT_EAGLE, 11);
SetPlayerSkillLevel(playerid, WEAPONSKILL_SAWNOFF_SHOTGUN, 1);
SetPlayerSkillLevel(playerid, WEAPONSKILL_SPAS12_SHOTGUN, 1);
SetPlayerSkillLevel(playerid, WEAPONSKILL_PISTOL_SILENCED, 11);
new name[24];
GetPlayerName(playerid, name, sizeof(name));
GivePlayerMoney(playerid, 1000);
SetPlayerArmour(playerid, 50.0);
SetPlayerHealth(playerid, 75.0);
new string[120];
format (string, sizeof(string), "Witaj %s na serwerze Deathmatch, otrzymujesz $1000 na start gry.", name);
SendClientMessage(playerid, COLOR_GREEN, string);
SendClientMessage(playerid, COLOR_AQUA, "Wpisz /pomoc aby zobaczyc liste dostepnych komend.");
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == DIALOG_GUNSHOP)
{
if(response == 1)
switch(listitem)
{
case 0:
{
if(GetPlayerMoney(playerid) < 500) return SendClientMessage(playerid, -1, "Nie masz tyle kasy!");
GivePlayerWeapon(playerid, WEAPON_DEAGLE, 90);
GivePlayerMoney(playerid, -500);
SendClientMessage(playerid, COLOR_ORANGE, "Kupiles Deagle za $500.");
}
case 1:
{
if(GetPlayerMoney(playerid) < 700) return SendClientMessage(playerid, -1, "Nie masz tyle kasy!");
GivePlayerWeapon(playerid, WEAPON_AK47, 90);
GivePlayerMoney(playerid, -700);
SendClientMessage(playerid, COLOR_ORANGE, "Kupiles AK47 za $700.");
}
}
}
else if(dialogid == DIALOG_TP)
{
if(response == 1)
switch(listitem)
{
case 0: //ganton
{
SetPlayerPos(playerid, 2494.0708,-1668.6140,13.3438);
SendClientMessage(playerid, COLOR_YELLOW, "Teleportowales sie na Ganton.");
}
case 1: //dillmore
{
SetPlayerPos(playerid, 653.9586,-584.6425,16.3281);
SendClientMessage(playerid, COLOR_YELLOW, "Teleportowales sie do Dillmore.");
}
case 2: //Las Colinas
{
SetPlayerPos(playerid, 2166.2385,-1005.1613,62.8047);
SendClientMessage(playerid, COLOR_YELLOW, "Teleportowales sie na Las Colinas.");
}
case 3: //Skate Park
{
SetPlayerPos(playerid, 1969.0618,-1440.6733,13.5438);
SendClientMessage(playerid, COLOR_YELLOW, "Teleportowales sie na Skate Park.");
}
case 4: //Glen Park
{
SetPlayerPos(playerid, 1971.5627,-1179.6821,25.9066);
SendClientMessage(playerid, COLOR_YELLOW, "Teleportowales sie na Glen Park.");
}
}
}
else if(dialogid == DIALOG_NEWBIE)
{
if(response == 1)
{
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Deathmatch v0.1", "Rozpoczynasz samouczek... [wkrotce]", "Dalej", "");
}
if(response == 0)
{
GameTextForPlayer(playerid, "~r~Anulowano", 2000, 3);
return 1;
}
}
else if(dialogid == DIALOG_DRUG)
{
if(response == 1)
switch(listitem)
{
case 0: //KOKA
{
SetPlayerDrunkLevel(playerid, 3500);
SendClientMessage(playerid, COLOR_YELLOW, "Wziales kokaine.");
}
case 1: //heroina
{
SetPlayerDrunkLevel(playerid, 3000);
SendClientMessage(playerid, COLOR_YELLOW, "Wziales heroine.");
}
}
if(response == 0)
{
GameTextForPlayer(playerid, "~r~Anulowano", 2000, 3);
return 1;
}
}
return 1;
}
public OnPlayerCommandPerformed(playerid, cmdtext[], success)
{
return 1;
}
CMD:hp(playerid, params[]) //to bedzie dla admina kiedys tylko
{
new give_playerid,
Float:hp;
if(sscanf(params, "df", give_playerid, hp))
{
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Deathmatch v0.1", "Uzycie komendy: /hp [id] [wartosc]", "Zamknij", "");
return 1;
}
if(!IsPlayerConnected(give_playerid))
{
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Deathmatch v0.1", "Nie ma takiego gracza.", "Zamknij", "");
return 1;
}
if(hp < 0 || hp > 100)
{
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Deathmatch v0.1", "Wartosc HP powinna byc w przedziale 1-100", "Zamknij", "");
return 1;
}
SetPlayerHealth(give_playerid, hp);
SendClientMessage(playerid, COLOR_ORANGE, "HP zostalo nadane.");
return 1;
}
CMD:pomoc(playerid, params[])
{
ShowPlayerDialog(playerid, DIALOG_HELP, DIALOG_STYLE_LIST, "Deathmatch v0.1- Komendy","/newbie - Jestes nowy? Zajrzyj!\n/kamizelka - Gracz dostaje kamizelke ($500)\n/zdrowie - Gracz zostaje uleczony($250)\n/spawn - Teleport gracza na spawn\n/sklep - Menu sklepu z bronia\n/tp - Lista teleportow", "Zamknij", "");
return 1;
}
CMD:spawn(playerid, params[])
{
SetPlayerFacingAngle(playerid, 90.0000);
SendClientMessage(playerid, COLOR_YELLOW, "Teleportowales sie na spawn!");
SetPlayerPos(playerid, 198.7482,-107.7110,1.5505);
return 1;
}
CMD:zdrowie(playerid, params[])
{
if(GetPlayerMoney(playerid) < 250)
return SendClientMessage(playerid, COLOR_AQUA, "Nie masz wystarczajaco pieniedzy! ($250)");
GivePlayerMoney(playerid, -250);
SendClientMessage(playerid, COLOR_ORANGE, "Zostales uleczony za $250.");
SetPlayerHealth(playerid, 100.0);
return 1;
}
CMD:kamizelka(playerid, params[])
{
if(GetPlayerMoney(playerid) < 500)
return SendClientMessage(playerid, COLOR_AQUA, "Nie masz wystarczajaco pieniedzy! ($500)");
GivePlayerMoney(playerid, -500);
SendClientMessage(playerid, COLOR_ORANGE, "Dostales kamizelke za $500.");
SetPlayerArmour(playerid, 100.0);
return 1;
}
CMD:sklep(playerid, params[])
{
ShowPlayerDialog(playerid, DIALOG_GUNSHOP, DIALOG_STYLE_LIST, "Deathmatch v0.1 - Sklep z bronia", "Deagle($500)\nAK47($700)", "Kup", "Wyjdz");
return 1;
}
CMD:tp(playerid, params[])
{
ShowPlayerDialog(playerid, DIALOG_TP, DIALOG_STYLE_LIST, "Deathmatch v0.1 - Teleporty", "Ganton\nDillmore\nLas Colinas\nSkate Park\nGlen Park", "Idz", "Anuluj");
return 1;
}
CMD:newbie(playerid, params[])
{
ShowPlayerDialog(playerid, DIALOG_NEWBIE, DIALOG_STYLE_MSGBOX, "Deathmatch v0.1 - Samouczek", "Uzyles tej komendy bo prawdopodobnie jestes nowy na serwerze\n i nie radzisz sobie z gra. Specjalnie dla Ciebie przygotowalismy maly poradnik,\n dzieki niemu powinienes zrozumiec o co tutaj chodzi.\n\nChcesz rozpoczac samouczek?", "Rozpocznij", "Anuluj");
return 1;
}
CMD:kill(playerid, params[])
{
ShowPlayerDialog(playerid, DIALOG_KILL, DIALOG_STYLE_MSGBOX, "Deathmatch v0.1 - Samobojstwo", "Jestes pewien, ze chcesz popelnic samobojstwo?", "Tak", "Nie chce");
GameTextForPlayer(playerid, "~r~Zginales", 2000, 3);
return 1;
}