Üzenetek megjelenítése

Ez a szekció lehetővé teszi a felhasználó által írt összes hozzászólás megtekintését. Vedd figyelembe, hogy csak azokba a fórumokba írt hozzászólásokat látod, amelyekhez hozzáférésed van.


Üzenetek - mr_rich

Oldalak: 1 ... 3 4 [5] 6 7 ... 9
61
SA-MP: Szerverfejlesztés / Fegyver használat script + reg.
« Dátum: 2013. Január 10. - 22:56:11 »

Sziasztok!
Készülgetõ módomból szeretném megosztani ezt a kis scriptet, ami fegyverekkel kapcsolatos funkciókat tartalmaz.
Azért játékmód kategóriába van, mert regisztrációs rendszerrel kötöttem össze, így menti a fegyvereinket.
Leírás:
3 darab (+kézben lévõ)  fegyvert tarthatunk magunknál, ezeket a fegyvereket átadhatjuk, eldobhatjuk, de vehetünk is fel.
Parancsok:
/parancsok
Fegyver elrakása: /fk - Kezükben lévõ fegyvert rakhatjuk el az egyik üres slotra (1-3).
Példa: /fk 1 - Kezünkben lévõ fegyvert az 1. slotra rakjuk.
Fegyver elõvétele: /fe - A 3 slot egyikébõl elõveszünk egy fegyvert a kezünkbe
Példa: /fe 1 - ELõvettük az 1. sloton lévõ fegyvert.
Fegyvereink ellenõrzése: /fegyverem - Slotokon lévõ fegyverek ellenõrzése
Fegyver felvétele a földrõl: /felvesz - Fegyver felvétele kézbe vagy a 3 slot közül valamelyikre.
Példa: /felvesz fegyver 1 - Földön lévõ fegyvert az 1. slotra vesszük fel.

Példa 2:  /felvesz fegyver kéz - Földön lévõ fegyvert a kezünkbe vesszük
.
Fegyver eldobása: /eldob - Fegyver eldobása a kezünkbõl vagy az egyik slotról.
Példa: /eldob slot 1 - Eldobjuk az 1. sloton lévõ fegyvert a földre

Példa 2:  /eldob kéz - Eldobjuk a kezünkben lévõ fegyvert a földre.

Fegyver átadása: /ad id - Fegyver átadása a kezünkbõl vagy egy slotról egy másik játékosnak
Példa: /ad 69 slot 1 - Átadjuk az 1. sloton lévõ fegyverünket az id 69-es játékosnak a kezébe.

Példa 2: /ad 69 kéz - Átadjuk a kezünkben lévõ fegyvert az id 69-es játékosnak a kezébe.

Fegyver spawnolás: /fad fegyvernév kéz/slot (1-3) - Fegyver spawnolás kézbe vagy az egyik slotra.
Példa: /fad colt45 slot 1 - Colt 45 pisztolyt kapunk az 1. slotra.

Példa 2: /fad colt45 kéz - Colt45 pisztolyt kapunk a kezünkbe.

Elérhetõ fegyverek a scriptben: Colt45, Silenced, Deagle, Shotgun, Shawnoff, Combat, Uzi, Tec9, MP5, AK47, M4, Rifle, Sniper
A mód menti a pozíciónkat (x, y, z, angle), interiort, virtual worldot, skinünket, pénzünket, admin szintet, öléseket, halálokat és a fegyvereket.
 
 
 
Letöltés: http://dfiles.eu/files/418jmfn27  |  Pastebin

62
Készülõ munkák / [GM]Fountain Valley RolePlay
« Dátum: 2013. Január 04. - 14:43:50 »
Jó ideig nem fejlesztettem, de a napokban újrakezdtem és a fegyverrendszert teljesen átírtam, komplikáltabb lett, de életszerûbb és hatékonyabb, ha teljesen kész rakok fel róla egy demo videót.

63
Készülõ munkák / [GM]Fountain Valley RolePlay
« Dátum: 2012. November 16. - 19:01:02 »
Fountain Valley RolePlay
 

Pár hete kezdtem el írni ezt a módot -ami RP stílusra hajaz- az eddigi tudásom alapján. A legfontosabb játékelem a kereskedelem lesz, mivel saját magunknak kell elõállítanunk a város számára szükséges alapanyagokat, hogy az emberek megkapjanak mindent ami kell az élethez. Igyekszem minél ötletesebben kidolgozni a munkákat, szórakozási lehetõségeket és a kereskedelmi rendszer. Ahogy idõm engedi, úgy írom a módot és építem a mapot. Célom nem betörni a magyar samp RP világába, csak megtudni, hogy képes vagyok egy ilyet megírni, és ha igen megnézzük mennyire lesz kedvelt a játékosok körében. Y_INI segítségével írom a módot, mivel számomra ez a legátláthatóbb jelenleg.
 


Bizniszek(folyamatban 45%)
A mód városa Fort Carson, mely tele van megvehetõ házakkal, bizniszekkel (ami igazán kedvezõ anyagi létet biztosít a tulajdonosának).
Különféle bizniszfajták vannak: étkezde, kisbolt(zöldséges), kiskereskedés, elektronikai üzlet, bolt, szerszámbolt, ruhabolt, fegyverbolt, autószalon, gyár, feldolgozóüzem)
 
 
Autószalonokban vásárolhatunk jármûveket. Vannak olcsóbb kategóriás, de van luxus kategóriás szalon is. Ha meguntuk a jármûvünket eladhatjuk a kereskedésnek (természetesen jóval olcsóbban mint vettük) vagy egy másik játékosnak. Csomagtartóba pakolhatjuk a dolgainkat, fegyvereinket.
 


Házak(folyamatban 25%)
Városban rengeteg házat láthatunk, melyeket megvásárolhatjuk. Tárolhatjuk a dolgainkat benne, hogy véletlen se lopják el kezünkbõl.
 
 


Fegyverek(folyamatban 70%)
Játékmenet során fegyvereket is szerezhetünk legális, vagy illegális úton. Csak 3db fegyvert tudunk magunknál tartani, de ez a 2 fegyver lehet Deagle-Colt45 kombináció vagy akár M4-AK47 kombináció. Fegyverek gyártása komoly szakértelmet és magas költségeket igényel, de legális úton is sok pénzünkbe kerülhet 1-1 fegyver.
 
 

Munkák(folyamatban 40%)
------Legális------
-Szabó: Ruhabolt számára varr ruhákat. Megveszi az alapanyagokat és az üzemben elkészíti a terméket.
-Szerszámkészítõ: Szerszámokat gyárt le, majd értékesíti a boltokban
-Gyári munkás: Különféle termékeket készít el, majd értékesít.
-Farmer: Learatja a termést és a boltokba eladja az alapanyagokat.
-Szakács: Megszabott alapanyagokból készíti el az ételeket.
-Favágó: Erdõben vágja ki a fát és hasznosítja hogy eladható legyen.
-Bányász: Különféle alapanyagokat nyer ki a földbõl, amiket hasznosít.
-Taxi sofõr: Ha az embernek van engedélye és egy gyors kocsija, felveheti ezt a munkát és segíthet az embereknek elérni oda ahova szeretnének.
-Kamion sofõr: Különbözõ szállítmányokat visz el országszerte egyik helyrõl a másikra.
------Illegális------
-Drogkereskedõ: Extasyt állíthat elõ a droglaborban és a terméket eladhatja másoknak, hogy élvezhessék eme kis bogyó hatását.
-Fegyverkereskedõ: Fegyvereket állít össze alapanyagok, szerszámok és alkatrészek segítségével, majd eladhatja azokat.
-Autótolvaj: Jármûveket kell megszereznie a fõnöknek, aki pénz vagy egyéb más dolgokkal jutalmazza meg.
 
 


Telefon(folyamatban 0%)
Különféle telefonokat vásárolhatunk meg, melyek kinézetileg és tudásilag is különböznek egymástól. Tudunk telefonálni, smst küldeni, egyenlegünket igazítgatni, és még 1-2 finomsággal többet tudnak a luxus kategóriás telefonok.
 
 


Leaderes Munkák(folyamatban 0%)
-Fountain Valley Rendõrség
-Fountain Valley Kórház
-Sick Angels Crew (motoros banda)
-Nevada\'s Cartell (drogkereskedõk)
 
 
UPDATE 2013:
Fegyver készítés fejlesztése:
Fegyvereinkhez meg kell vennünk az alkatrészeket(minden fegyverhez külön kell megvenni a megfelelõ részeket és ha elég magas az adott fegyver összerakásához a szakértelmünk, akkor csinálhatunk fegyvert. Tanulni könyvekbõl tudunk, elõször az alap eljárást kell elsajátítanunk majd külön minden fegyver összerakását meg kell tanulni. Fegyvereket az elején még nem tudjuk jól használni, el kell járnunk képzésre hogy jól tudjunk célozni velük.
Következõ fejlesztés:
Drog rendszer elkészítése, cél egy jól mûködõ, reálishoz hasonló rendszer kiépítése, mely tartalmazza a készítést, tárolást, felhasználást. (0%)

64
SA-MP: Szerverfejlesztés / East vs West TDM
« Dátum: 2012. Május 12. - 12:59:36 »
Készíts a scriptfiles mappába egy CityTDM_Users mappát és kész

65
SA-MP: Szerverfejlesztés / East vs West TDM
« Dátum: 2012. Május 12. - 12:59:36 »
Készíts a scriptfiles mappába egy CityTDM_Users mappát és kész

66
SA-MP: Szerverfejlesztés / East vs West TDM
« Dátum: 2012. Április 26. - 18:04:24 »
köszönöm mindenkinek.
hát most épp egy másfajta stílusú TDM módon dolgozok, amelyben megtalálható lesz pár egyedi map

67
SA-MP: Szerverfejlesztés / East vs West TDM
« Dátum: 2012. Április 26. - 13:45:43 »

 

Készítettem egy egyszerû TDM játékmódot, ami lényege pontot szerezni a csapatodnak és nyerni.

Pontot az ellenséges város pickup-ait felszedve kap a csapatunk. A játék fontos eleme az ellenfelek kiiktatása is.


Fejleszthetjük magunkat a pénzbõl amit szerzünk, vásárolhatunk élet, páncélcsomagokat és fegyvereket.


Parancsok (/cmds):

-Segítség: /help

-Statisztikánk: /stats


-Fegyver képességünk: /wskill


-Fegyvervásárlás: /ws


-Bank fõoldal: /bank


-Fegyver eldobása, felvétele: /wle /wfel


-Adminsegítség: /ahelp


Admin Parancsok:

-Kirúgás: /kick

-Kitiltás: /ban


-Freeze, Unfreeze: /freeze /unfreeze


-Admin adás: /makeadmin


-Adminszint változtatása: /asetlevel


-Pénz adás: /agivecash


-Bankpénz adás: /agivebank


A mód fizetõeszköze a Cash. Úgy szerezhetsz, ha más játékosokat ölsz vagy eladod a talált alkatrészeket. Alkatrészt akkor kapsz, ha sikeresen felveszel egy pickup-t.

A
leltáradban (Inventory) találhatsz Közepes, Nagy elsõsegély csomagot és Páncélcsomagot. A leltárad a \'KEY_SPRINT\' és a \'KEY_WALK\' gombkombinációval nyithatod meg. Ezeket a csapatod boltosánál vásárolhatod meg.

Páncélt vehetsz a \'/ws\' paranccsal is, de drágább. A Csapat árusával  a \'KEY_YES\' (Y alapértelmezett) gombbal tudsz beszélni.

Képek:



[hs width=300 height=300]http://noob.hu/2012/04/26/elquebrados.JPG[/hs]
[hs width=300 height=300]http://noob.hu/2012/04/26/laspayasadas.JPG[/hs]
[hs width=300 height=300]http://noob.hu/2012/04/26/wskills.JPG[/hs]
[hs width=300 height=300]http://noob.hu/2012/04/26/wsop.JPG[/hs]
[hs width=300 height=300]http://noob.hu/2012/04/26/shopper.JPG[/hs]
[hs width=300 height=300]http://noob.hu/2012/04/26/leltar.JPG[/hs]
LETÖLTÉS:
Pastebin: http://pastebin.com/dvXJpAzN
Teljes: http://www.solidfiles.com/d/7e11906532/
 
 

///////////////////////INCLUDES///////////////////////////
#include <a_samp>
#include <sscanf2>
#include <YSI\\y_ini>
#include <dudb>
#include <foreach>
#include <float>
#include <zcmd>
#include <streamer>
///////////////////////////////////////////////////////
#pragma unused ret_memcpy
///////////////////DEFINES///////////////////////////
//===============================================================================================//
#undef MAX_PLAYERS
#define MAX_PLAYERS 30
#define PRESSED(%0) \\
(((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
#define TEAM_EAST 0
#define TEAM_WEST 1
#define MAX_DROP_ITEMS 1000
#define Mappa \"/CityTDM_Users/%s.ini\"
//===============================================================================================//
#define WEAPONS 9
#define MAX_SEARCH 3
#define MAX_P1 45
#define MAX_P2 45
//======================DIALOG DEFINE===============================//
#define DIALOG_REGISTER 1
#define DIALOG_LOGIN 2
#define DIALOG_STATS 5
#define DIALOG_SKILLS 7
#define DIALOG_BANKWITHDRAW 70
#define DIALOG_BANKDEPOSIT 71
#define DIALOG_BANKHOME 72
#define DIALOG_WEPS 8
#define DIALOG_COLT 81
#define DIALOG_SILENCED 82
#define DIALOG_DEAGLE 83
#define DIALOG_SHOTGUN 84
#define DIALOG_COMBAT 85
#define DIALOG_MP5 86
#define DIALOG_UZI 87
#define DIALOG_M4 88
#define DIALOG_AK 89
#define DIALOG_SHOPPER 9
#define DIALOG_SHOP 10
#define DIALOG_MHP 11
#define DIALOG_LHP 12
#define DIALOG_ARMOR 13
#define inventory 69
#define weapons 68
#define DIALOG_PARTS 15
//===============================COLORS===============================//
#define COLOR_GREY 0xAFAFAFAA
#define COLOR_RED 0xFF0000AA
#define COLOR_ERROR 0xAA3333AA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_WHITE 0xFFFFFFAA
#define COLOR_DARKBLUE 0x2641FEAA
#define COLOR_GREEN 0x00FF00FF
#define COLOR_PURPLE 0xAC48B7C8
#define COLOR_SIKER 0x99DDBBBB
#define COLOR_TEAM1 0x33DDBBBB
#define COLOR_TEAM2 0x33DD2222
/////////////////////////////
#define COL_WHITE \"{FFFFFF}\"
#define COL_RED \"{F81414}\"
#define COL_GREEN \"{00FF22}\"
#define COL_LIGHTBLUE \"{00CED1}\"
//////////////////////////////////////////////////////////
/////////////////////////////ENUMS//////////////////////////////////////
//===============================================================================================//
enum dData
{
    DropGunAmmount[2],//ModelID & Bullets
    Float:DropGunPosX,
    Float:DropGunPosY,
    Float:DropGunPosZ,
    DropGunVWorld,
    DropGunInterior,
};
new DropInfo[MAX_DROP_ITEMS][dData];
//===============================================================================================//
enum  pInfo
{
pPassword,
pAdminlevel,
pKills,
pDeaths,
pCash,
pBankCash,
pSilencedS,
p9mmS,
pShotgunS,
pCombatS,
pMP5S,
pUZIS,
pM4S,
pAKS,
pDeagleS,
pMediumHP,
pLargeHP,
pArmour,
pParts,
Float:pHealthCurr,
pInt,
pVW
};
new PlayerInfo[MAX_PLAYERS][pInfo];
//===============================================================================================//
/////////////////////////NEWS/////////////////////////////
//===============================================================================================//
new stringdrop[128], sendernamedrop[MAX_PLAYER_NAME], DropObject[MAX_DROP_ITEMS];
new Team1Points=0;
new Team2Points=0;
new Text:pointTXD;
new PlayerText:cashtxd[MAX_PLAYERS];
new PlayerText:HPxd[MAX_PLAYERS];
new RobPickup1[MAX_P1];
new RobPickup2[MAX_P2];
new RobTimer1[MAX_PLAYERS];
new bool:Weapon[MAX_PLAYERS][47];//fegyverek
new PlayerText:box[MAX_PLAYERS],PlayerText:speed[MAX_PLAYERS],PlayerText:health[MAX_PLAYERS];
new TeamKilling[MAX_PLAYERS];
new Fosztogat[MAX_PLAYERS];
//===============================================================================================//
new GunObjectIDs[200] ={
   1575,  331, 333, 334, 335, 336, 337, 338, 339, 341, 321, 322, 323, 324, 325, 326, 342, 343, 344, -1,  -1 , -1 ,
   346, 347, 348, 349, 350, 351, 352, 353, 355, 356, 372, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
   368, 369, 1575
};
//===============================================================================================//
new Float:gRandomTeam1Pickup[45][3] = {
{-1451.1884,2692.8845,55.8359},
{-1467.5587,2707.2400,55.8359},
{-1465.9844,2695.0833,55.8359},
{-1478.5016,2701.9407,55.8359},
{-1503.4830,2703.8196,55.8359},
{-1499.6846,2691.2825,55.8359},
{-1519.0361,2693.7119,55.8359},
{-1531.8474,2692.8738,55.8359},
{-1546.2283,2698.4595,55.8403},
{-1552.2336,2700.4956,55.8359},
{-1565.3099,2715.8699,55.8403},
{-1572.8817,2697.6345,55.8359},
{-1589.5532,2705.8369,56.1762},
{-1588.5060,2710.7983,55.6121},
{-1600.4935,2697.8928,55.1545},
{-1603.4045,2689.2351,55.2856},
{-1576.8563,2686.9490,55.8359},
{-1587.1777,2647.8994,55.8359},
{-1576.8322,2639.3289,55.8359},
{-1570.3936,2630.1614,55.8403},
{-1561.6390,2616.7637,56.1526},//21
{-1532.9005,2658.1848,56.2814},
{-1531.3799,2645.3296,55.8359},
{-1525.9392,2623.7944,55.8359},
{-1512.5520,2648.1621,55.8359},
{-1515.0175,2621.3079,55.8359},
{-1480.9750,2644.0068,55.8359},
{-1475.3689,2625.1262,55.8359},
{-1464.8352,2653.0535,55.8359},
{-1457.4587,2646.9185,55.8359},
{-1478.5834,2638.3777,58.7879},
{-1469.2006,2629.0432,58.7734},
{-1458.9485,2619.2844,55.8359},
{-1441.9359,2636.6052,55.8359},
{-1444.9055,2652.8123,56.2699},
{-1388.8317,2651.6731,55.9844},
{-1429.6373,2581.2878,55.8359},
{-1440.1379,2572.6709,55.8359},
{-1458.9500,2552.1646,55.8359},
{-1475.5812,2579.2510,55.8359},
{-1483.0105,2548.7017,55.8359},
{-1514.7076,2519.6272,56.0577},
{-1535.3921,2503.6643,55.9572},
{-1515.5369,2507.4648,55.9494},
{-1492.6295,2517.4924,55.9353}
};
//===============================================================================================//
new Float:gRandomTeam2Pickup[45][3] = {
{-198.3694,2592.9280,62.7031},
{-258.3529,2592.1477,63.5703},
{-280.1544,2599.0581,62.8582},
{-287.9182,2650.9436,62.9879},
{-271.0819,2654.8555,62.6555},
{-271.1404,2668.3721,62.6467},
{-312.2236,2659.3672,62.9726},
{-322.3807,2672.0520,62.7265},
{-296.8841,2675.5071,62.6185},
{-284.4815,2678.1992,62.6290},
{-276.4213,2680.0171,62.6413},
{-333.6807,2720.7202,62.8345},
{-316.0871,2726.2429,62.6875},
{-299.4241,2756.8811,62.2226},
{-287.1838,2758.4790,62.5121},
{-284.5575,2725.3103,62.3420},
{-277.6258,2719.7737,62.5762},
{-277.3961,2735.4175,62.3879},
{-274.5484,2742.1069,62.4084},
{-270.9595,2751.3313,62.2586},
{-268.6898,2769.0789,61.8823},//21
{-262.8306,2781.7170,62.6875},
{-262.8584,2789.7852,62.6875},
{-233.6844,2808.8450,62.0547},
{-225.0586,2813.2451,62.3464},
{-220.0033,2773.5144,62.6843},
{-214.4505,2776.2039,62.4695},
{-202.3536,2772.3186,62.2439},
{-194.9195,2773.7920,61.9413},
{-174.1871,2771.0564,61.9929},
{-165.2738,2768.0020,62.6875},
{-154.0008,2763.8618,62.5988},
{-165.6438,2741.1147,62.3614},
{-160.0934,2732.4680,62.1662},
{-161.3826,2728.0649,62.2053},
{-161.6234,2713.4607,62.5213},
{-149.4995,2688.9019,62.4297},
{-141.1932,2681.9099,62.4569},
{-154.5179,2673.5505,62.6836},
{-212.5925,2720.5249,62.6875},
{-229.0237,2722.5955,62.6875},
{-240.6179,2719.6602,62.6875},
{-232.3395,2682.3430,62.6544},
{-229.3730,2665.0669,62.6217},
{-206.9444,2673.6047,62.5993}
};
//===============================================================================================//
new Float:gRandomTeam1[6][3] = {
{-1390.9521,2635.0664,55.9844},
{-1477.1383,2700.9443,55.8359},
{-1562.6176,2638.4490,55.8359},
{-1514.5270,2522.0100,55.8409},
{-1459.2069,2618.0579,58.7734},
{-1319.6302,2698.1245,50.2663}
};
//===============================================================================================//
new Float:gRandomTeam2[6][3] = {
{-251.3021,2587.0161,63.5703},
{-277.6555,2611.4063,62.8582},
{-227.5840,2708.9937,62.9843},
{-277.7000,2770.2747,61.8136},
{-182.5040,2764.9187,61.6889},
{-169.2396,2699.8821,62.4992}
};
//===============================================================================================//
/////////////////////////FORWARDS////////////////////////////
//===============================================================================================//
forward LoadUser_data(playerid,name[],value[]);
forward GameEndX();
forward GameEndX2();
forward textupdate(playerid);//
forward cashupdate(playerid);
forward hpupdate(playerid);
forward playerupdate(playerid);
forward Skillupdate(playerid);
forward GivePlayerWeaponEx(playerid,weaponid,ammo);//fegyvert ad
forward ResetPlayerWeaponsEx(playerid);//reset fegyver
forward AntiCheat();//anticheat
forward SpeedoUpdate();
forward SetPlayerRandomSpawn(playerid);
forward SetPlayerTeamFromClass(playerid, classid);
forward FosztogatasT1(playerid);
forward FosztogatasT2(playerid);
forward pointupdate(playerid);
forward FreezeUnfreezeTimer( playerid );
//===============================================================================================//
///////////////////STOCK////////////////////////
//===============================================================================================//
stock PlayerName(playerid)
{
    new Name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, Name, sizeof(Name));
    return Name;
}
//============================================
stock FreezePlayerForTime( playerid, time ) {
    TogglePlayerControllable( playerid, 0 );
    return SetTimerEx( \"FreezeUnfreezeTimer\", time * 1000, 0, \"i\", playerid );
}
//============================================
stock RemovePlayerWeapon(playerid, weaponid)//Credits to Xalphox
{
    if(!IsPlayerConnected(playerid) || weaponid < 0 || weaponid > 50)
        return;
    new saveweapon[13], saveammo[13];
    for(new slot = 0; slot < 13; slot++)
        GetPlayerWeaponData(playerid, slot, saveweapon[slot], saveammo[slot]);
    ResetPlayerWeaponsEx(playerid);
    for(new slot; slot < 13; slot++)
    {
        if(saveweapon[slot] == weaponid || saveammo[slot] == 0)
            continue;
        GivePlayerWeaponEx(playerid, saveweapon[slot], saveammo[slot]);
    }
    GivePlayerWeaponEx(playerid, 0, 1);
}
//============================================
stock SendLocalMessage(playerid, msg[], Float:MessageRange, Range1color, Range2color)
{
    new Float: PlayerX, Float: PlayerY, Float: PlayerZ;
    GetPlayerPos(playerid, PlayerX, PlayerY, PlayerZ);
    foreach (Player, i)
    {
        if(IsPlayerInRangeOfPoint(i, MessageRange, PlayerX, PlayerY,PlayerZ))
        {
            SendClientMessage(i, Range1color, msg);
        }
        else if(IsPlayerInRangeOfPoint(i, MessageRange/2.0, PlayerX, PlayerY,PlayerZ))
        {
            SendClientMessage(i, Range2color, msg);
        }
    }
}
//============================================
stock GetGunObjectID(WeaponID)
{
    if (WeaponID < 0 || WeaponID > 64)
    {
        return 1575;
    }
    return GunObjectIDs[WeaponID];
}
//============================================
stock DropGun(playerid, GunID, GunAmmo, Float:X, Float:Y, Float:Z, world, interior)
{
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    if(GunID != 0 && GunAmmo != 0)
    {
        for(new i = 0; i < sizeof(DropInfo); i++)
        {
            if(DropInfo[DropGunPosX] == 0.0 && DropInfo[DropGunPosY] == 0.0 && DropInfo[DropGunPosZ] == 0.0)
            {
                DropInfo[DropGunAmmount][0] = GunID;
                DropInfo[DropGunAmmount][1] = GunAmmo;
                DropInfo[DropGunPosX] = X;
                DropInfo[DropGunPosY] = Y;
                DropInfo[DropGunPosZ] = Z;
                DropInfo[DropGunVWorld] = world;
                DropInfo[DropGunInterior] = interior;
                DropObject = CreateDynamicObject(GetGunObjectID(GunID), X, Y, Z-1, 80.0, 0.0, 0.0, world);
                return 1;
            }
        }
        return 1;
    }
    return 1;
}
//============================================
stock UserPath(playerid)
{
    new string[128],playername[MAX_PLAYER_NAME];
    GetPlayerName(playerid,playername,sizeof(playername));
    format(string,sizeof(string),Mappa,playername);
    return string;
}
//============================================
stock GetName(playerid)
{
    new name[24];
    GetPlayerName(playerid, name, sizeof name);
    return name;
}
//============================================
stock LargeHP1(playerid)
{
    new Float:hp;
if(PlayerInfo[playerid][pLargeHP] > 0){
GetPlayerHealth(playerid,hp);
if(hp > 120) return SetPlayerHealth(playerid,200.0);
SetPlayerHealth(playerid,hp+80);
PlayerInfo[playerid][pLargeHP]--;
SendClientMessage(playerid,COLOR_PURPLE,\"Felhasználtál egy nagy elsõsegélycsomagot!\");
}
else{
SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]Nincs nálad nagy csomag!\");}
return 1;
}
//============================================
stock MediumHP1(playerid)
{
    new Float:hp;
if(PlayerInfo[playerid][pMediumHP] > 0){
GetPlayerHealth(playerid,hp);
if(hp > 150) return SetPlayerHealth(playerid,200.0);
SetPlayerHealth(playerid,hp+50);
PlayerInfo[playerid][pMediumHP]--;
SendClientMessage(playerid,COLOR_PURPLE,\"Felhasználtál egy közepes elsõsegélycsomagot!\");
}
else{
SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]Nincs nálad közepes csomag!\");}
return 1;
}
//============================================
stock Armour1(playerid)
{
if(PlayerInfo[playerid][pArmour] > 0){
SetPlayerArmour(playerid, 100.0);
SendClientMessage(playerid, COLOR_PURPLE, \"Felvettél egy golyóálló mellényt.\");
PlayerInfo[playerid][pArmour]--;
}
else{
SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]Nincs egy mellényed se!\");}
return 1;
}
//============================================
stock fosztogatas1(playerid)
{
Fosztogat[playerid]=1;
RobTimer1[playerid] = SetTimerEx(\"FosztogatasT1\", 10000, false,\"i\",playerid);
ApplyAnimation(playerid,\"BOMBER\",\"BOM_Plant\",4.1,0,1,1,0,12000,1);
SendClientMessage(playerid,COLOR_PURPLE,\"[sZERVER]Várj amíg befejezed!(10mp)\");
return 1;
}
stock fosztogatas2(playerid)
{
Fosztogat[playerid]=1;
RobTimer1[playerid] = SetTimerEx(\"FosztogatasT2\", 10000, false,\"i\",playerid);
ApplyAnimation(playerid,\"BOMBER\",\"BOM_Plant\",4.1,0,1,1,0,12000,1);
SendClientMessage(playerid,COLOR_PURPLE,\"[sZERVER]Várj amíg befejezed!(10mp)\");
return 1;
}
//============================================
stock fosztogatomeghal(playerid)
{
      if(Fosztogat[playerid]==1)
{
    SendClientMessage(playerid,COLOR_ERROR,\"[sZERVER]Ez most nem jött össze!\");
KillTimer(RobTimer1[playerid]);
RobTimer1[playerid] =-1;
Fosztogat[playerid]=0;
}
else if(Fosztogat[playerid]==0)
{
}
return 1;
}
//============================================
//===============================================================================================//
/////////////////////////////////////PUBLICS////////////////////////////////////////////////
//===============================================================================================//
public FreezeUnfreezeTimer( playerid ) {
    return TogglePlayerControllable( playerid, 1 );
}
//============================================
public LoadUser_data(playerid,name[],value[])
{
    INI_Int(\"Password\",PlayerInfo[playerid][pPassword]);
    INI_Int(\"Adminlevel\",PlayerInfo[playerid][pAdminlevel]);
    INI_Int(\"Kills\",PlayerInfo[playerid][pKills]);
    INI_Int(\"Deaths\",PlayerInfo[playerid][pDeaths]);
    INI_Int(\"Cash\",PlayerInfo[playerid][pCash]);
    INI_Int(\"BankCash\",PlayerInfo[playerid][pBankCash]);
INI_Int(\"SilencedSkill\",PlayerInfo[playerid][pSilencedS]);
INI_Int(\"9mmSkill\",PlayerInfo[playerid][p9mmS]);
INI_Int(\"ShotgunSkill\",PlayerInfo[playerid][pShotgunS]);
INI_Int(\"CombatSkill\",PlayerInfo[playerid][pCombatS]);
INI_Int(\"MP5Skill\",PlayerInfo[playerid][pMP5S]);
INI_Int(\"UziSkill\",PlayerInfo[playerid][pUZIS]);
INI_Int(\"M4Skill\",PlayerInfo[playerid][pM4S]);
INI_Int(\"AK47Skill\",PlayerInfo[playerid][pAKS]);
INI_Int(\"DeagleSkill\",PlayerInfo[playerid][pDeagleS]);
INI_Int(\"MediumHP\",PlayerInfo[playerid][pMediumHP]);
INI_Int(\"LargeHP\",PlayerInfo[playerid][pLargeHP]);
INI_Int(\"Armour\",PlayerInfo[playerid][pArmour]);
INI_Int(\"Parts\",PlayerInfo[playerid][pParts]);
INI_Int(\"Int\",PlayerInfo[playerid][pInt]);
INI_Int(\"VW\",PlayerInfo[playerid][pVW]);
    return 1;
}
//============================================
public GivePlayerWeaponEx(playerid,weaponid,ammo)
{
    Weapon[playerid][weaponid] = true;
    return GivePlayerWeapon(playerid,weaponid,ammo);
}
//============================================
public ResetPlayerWeaponsEx(playerid)
{
    for(new wep=0;wep<47;wep++) Weapon[playerid][wep] = false;
    return ResetPlayerWeapons(playerid);
}
//============================================
public SetPlayerRandomSpawn(playerid)
{
if (GetPlayerTeam(playerid) == 1)
{
new rand = random(sizeof(gRandomTeam2));
SetPlayerPos(playerid, gRandomTeam2[rand][0], gRandomTeam2[rand][1], gRandomTeam2[rand][2]); // Warp the player
    }
    else if (GetPlayerTeam(playerid) == 0)
    {
new rand = random(sizeof(gRandomTeam1));
SetPlayerPos(playerid, gRandomTeam1[rand][0], gRandomTeam1[rand][1], gRandomTeam1[rand][2]); // Warp the player
}
return 1;
}
//============================================
public SetPlayerTeamFromClass(playerid, classid)
{
SetPlayerPos(playerid, -781.4761,2746.4585,48.4550);
SetPlayerFacingAngle(playerid,180.5334);
SetPlayerCameraPos(playerid, -781.7635,2742.7346,48.4412);
    SetPlayerCameraLookAt(playerid, -781.4761,2746.4585,48.4550);
      if(classid == 0 || classid == 1 || classid == 2 || classid == 3 || classid == 4 || classid == 5) {
GameTextForPlayer(playerid,\"~g~West Team\",1000,5);
SetPlayerColor(playerid,COLOR_TEAM1);
SetPlayerTeam(playerid,TEAM_EAST);
}
else if(classid == 6 || classid == 7 || classid == 8 || classid == 9 || classid == 10 || classid == 11) {
  GameTextForPlayer(playerid,\"~p~East Team\",1000,5);
  SetPlayerColor(playerid,COLOR_TEAM2);
  SetPlayerTeam(playerid,TEAM_WEST);
}
return 1;
}
//============================================
//===============================================================================================//
 
main()
{
print(\"\\n----------------------------------\");
print(\"East vs West TDM\");
print(\"----------------------------------\\n\");
for(new pi=0;pi<MAX_P1;pi++)
    {
    RobPickup1[pi] = CreateDynamicPickup(1254,1,gRandomTeam1Pickup[pi][0],gRandomTeam1Pickup[pi][1],gRandomTeam1Pickup[pi][2],-1,-1,-1,300.0);
    }
      for(new pi=0;pi<MAX_P2;pi++)
    {
    RobPickup2[pi] = CreateDynamicPickup(1254,1,gRandomTeam2Pickup[pi][0],gRandomTeam2Pickup[pi][1],gRandomTeam2Pickup[pi][2],-1,-1,-1,300.0);
    }
}
 
public OnGameModeInit()
{
SetGameModeText(\"East vs West TDM\");
ConnectNPC(\"Shop1\",\"shop1\");
ConnectNPC(\"Shop2\",\"shop2\");
DisableInteriorEnterExits();
EnableStuntBonusForAll(0);
AllowInteriorWeapons(1);
SetTimer(\"AntiCheat\", 1000, 1);
SetTimer(\"SpeedoUpdate\",100,1);
SetTimer(\"GameEndX\",600000,false);
CreateDynamicMapIcon(-1490.5747,2622.3804,55.8338,25,-1,-1,-1,-1,2000.0);
CreateDynamicMapIcon(-225.2686,2689.0718,62.6738,25,-1,-1,-1,-1,2000.0);
   
    AddStaticVehicleEx(554,-1400.2592,2631.5330,55.8504,267.5182,62,1,180); // yose
    AddStaticVehicleEx(419,-1400.3499,2640.7419,55.7799,90.2908,62,1,180); // esperant
    AddStaticVehicleEx(470,-1400.3864,2647.2166,55.7799,268.7432,62,1,180); // hummer
    AddStaticVehicleEx(445,-1400.4164,2653.4946,55.7798,269.9619,62,1,180); // admiral
    AddStaticVehicleEx(78,-1454.4915,2685.8049,55.9285,24.7042,62,1,180); // watlon
    AddStaticVehicleEx(422,-1471.2456,2699.5059,55.8532,171.1266,62,1,180); // kisplatos
    AddStaticVehicleEx(445,-1485.1846,2696.6907,55.8529,225.9263,62,1,180); // admiral
    AddStaticVehicleEx(400,-1475.2908,2653.0427,55.9283,286.9627,62,1,180); // landstalker(ez)
    AddStaticVehicleEx(543,-1512.2195,2658.1951,55.9283,279.2589,62,1,180); // sadler
    AddStaticVehicleEx(467,-1511.2234,2692.5688,55.8528,275.1664,62,1,180); // oceanic
    AddStaticVehicleEx(445,-1557.0543,2699.5684,55.8531,353.6557,62,1,180); // admiral
    AddStaticVehicleEx(554,-1567.2156,2689.2444,55.8531,182.4270,62,1,180); // yosemit
    AddStaticVehicleEx(470,-1596.6049,2689.9890,55.0506,359.0348,62,1,180); // patriot
    AddStaticVehicleEx(419,-1572.4216,2647.9753,55.8531,209.1092,62,1,180); // esper
    AddStaticVehicleEx(554,-1561.5536,2643.3604,55.8527,314.5056,62,1,180); // yose
    AddStaticVehicleEx(445,-1520.6638,2631.7324,55.9283,80.2482,62,1,180); // admiral
    AddStaticVehicleEx(505,-1518.1464,2570.0684,55.9283,177.3143,62,1,180); // rancher
    AddStaticVehicleEx(445,-1521.1113,2588.7087,55.9284,2.0337,62,1,180); // admiral
    AddStaticVehicleEx(466,-1527.3632,2606.5564,55.8498,269.1337,62,1,180); // glendale
    AddStaticVehicleEx(445,-1432.0044,2589.8774,55.8902,359.4409,62,1,180); // admiral
    AddStaticVehicleEx(438,-1467.1584,2605.9001,55.8499,90.9721,62,1,180); // cabbie
    AddStaticVehicleEx(490,-1463.7014,2590.0271,55.8870,177.3288,62,1,180); // ranger
    AddStaticVehicleEx(489,-1476.8510,2558.6782,55.8527,86.6365,62,1,180); // ranch
    AddStaticVehicleEx(445,-1484.9807,2544.0178,55.8535,342.4104,62,1,180); // admiral
    AddStaticVehicleEx(490,-1497.5115,2524.7852,55.7799,359.0609,62,1,180); // fbi ranchr
    AddStaticVehicleEx(439,-1503.9102,2526.0190,55.7799,0.2352,62,1,180); // elegantr
    AddStaticVehicleEx(445,-1519.6302,2525.1609,55.7841,182.4529,62,1,180); // admiral
    AddStaticVehicleEx(466,-1528.8083,2556.6472,55.8493,268.9328,62,1,180); // glend
    AddStaticVehicleEx(495,-1327.3524,2696.6045,50.1548,225.2959,62,1,180); // sandking
    AddStaticVehicleEx(463,-1311.6228,2706.1665,50.1548,6.3673,62,1,180); // freeway
    AddStaticVehicleEx(463,-1307.9916,2706.9365,50.1549,5.6977,62,1,180); // freeway
    AddStaticVehicleEx(463,-1303.3569,2708.0684,50.1549,4.2517,62,1,180); // freeway
    AddStaticVehicleEx(470,-1292.5016,2715.5171,50.1548,186.8688,62,1,180); // patriot
    AddStaticVehicleEx(475,-1275.5703,2705.2114,50.1548,207.9395,62,1,180); // regina
    AddStaticVehicleEx(492,-1269.7976,2708.1853,50.1629,209.8417,62,1,180); // greenwod
    AddStaticVehicleEx(438,-1259.3923,2715.4404,50.1550,25.7239,62,1,180); // cabbie fekete
    AddStaticVehicleEx(468,-888.5145,2693.4111,42.4626,320.5648,62,1,180); // sanchez
    AddStaticVehicleEx(445,-900.6465,2708.1746,42.4595,233.7493,62,1,180); // admiral
    AddStaticVehicleEx(539,-912.9328,2695.7292,42.4460,137.2012,62,1,180); // vortex
    AddStaticVehicleEx(400,-903.2429,2689.5063,42.4626,42.2189,62,1,180); // ez
    AddStaticVehicleEx(470,-883.6322,2757.9272,46.0200,92.7268,62,1,180); // patriot
    AddStaticVehicleEx(463,-871.9893,2750.4099,46.0137,270.7333,62,1,180); // freeway
    AddStaticVehicleEx(463,-863.5759,2752.0037,45.9439,275.9947,62,1,180); // freeway
    AddStaticVehicleEx(492,-857.1390,2765.7554,46.0928,179.0079,62,1,180); // green
    AddStaticVehicleEx(462,-829.6563,2746.9578,46.1133,72.6134,62,1,180); // faggio
    AddStaticVehicleEx(470,-822.6600,2763.5154,46.0164,152.9570,62,1,180); // patriot
    AddStaticVehicleEx(470,-784.1257,2753.8247,45.7406,89.5250,62,1,180); // patriot
    AddStaticVehicleEx(445,-784.1604,2759.7249,45.7394,90.1954,62,1,180); // admiral
    AddStaticVehicleEx(489,-770.6931,2760.1782,45.8390,170.6828,62,1,180); // ranch
    AddStaticVehicleEx(492,-753.8804,2754.8584,45.8654,181.3761,62,1,180); // green
    AddStaticVehicleEx(490,-735.6510,2756.5769,47.3189,267.6908,62,1,180); // ranger
    AddStaticVehicleEx(463,-741.6699,2743.5637,47.1663,208.7609,62,1,180); // freew
    AddStaticVehicleEx(400,-334.9990,2682.0144,63.0550,91.5090,62,1,180); // lands
    AddStaticVehicleEx(492,-336.1421,2672.5852,63.3846,112.1124,62,1,180); // glend
    AddStaticVehicleEx(478,-318.7139,2664.3481,63.0907,278.4185,62,1,180); // walton
    AddStaticVehicleEx(586,-302.3061,2660.4167,62.2947,264.8854,27,1,180); // wayfar
    AddStaticVehicleEx(586,-298.8438,2673.4446,62.1303,358.7789,27,1,180); // wayfar
    AddStaticVehicleEx(490,-291.7710,2718.2275,61.9548,158.5205,27,1,180); // rancherfbi
    AddStaticVehicleEx(463,-284.6037,2752.6067,61.5967,314.6755,27,1,180); // freew
    AddStaticVehicleEx(468,-265.5350,2760.4644,61.7305,262.1052,27,1,180); // sanchez
    AddStaticVehicleEx(470,-268.4882,2774.5212,61.1334,89.4670,27,1,180); // patriot
    AddStaticVehicleEx(445,-280.1823,2687.2732,62.1846,358.5492,27,1,180); // admiral
    AddStaticVehicleEx(554,-262.3565,2682.5276,62.2075,178.7153,27,1,180); // yose
    AddStaticVehicleEx(466,-272.2253,2676.2395,62.1632,272.0171,27,1,180); // glend
    AddStaticVehicleEx(468,-236.5213,2726.1289,62.2076,275.2027,27,1,180); // sanch
    AddStaticVehicleEx(470,-220.1620,2727.9189,62.2073,1.2841,27,1,180); // patriot
    AddStaticVehicleEx(445,-219.9204,2778.4958,62.0831,269.5688,27,1,180); // admiral
    AddStaticVehicleEx(422,-223.7352,2806.5020,61.7994,357.7033,27,1,180); // sadler
    AddStaticVehicleEx(586,-189.5431,2772.2842,61.3492,183.1726,27,1,180); // wayfar
    AddStaticVehicleEx(505,-162.6631,2763.3823,62.1518,188.7002,27,1,180); // racner
    AddStaticVehicleEx(445,-168.8541,2737.4043,61.9487,82.6380,27,1,180); // admiral
    AddStaticVehicleEx(470,-166.1673,2718.9121,61.4951,272.3196,27,1,180); // patriot
    AddStaticVehicleEx(445,-154.7374,2679.3108,62.0353,251.4844,27,1,180); // admiral
    AddStaticVehicleEx(440,-204.1294,2664.2356,62.2058,87.0449,27,1,180); // burrito
    AddStaticVehicleEx(467,-213.8105,2705.9255,62.0590,89.3314,27,1,180); // oceanic
    AddStaticVehicleEx(586,-238.3762,2707.8655,62.2070,91.1409,27,1,180); // wayf
    AddStaticVehicleEx(463,-282.4042,2605.9731,62.3780,25.1082,27,1,180); // free
    AddStaticVehicleEx(478,-241.1785,2594.6357,62.2233,180.6190,27,1,180); // walt
    AddStaticVehicleEx(445,-237.6909,2594.8831,62.3785,178.4947,1,2,180); // admiral
    AddStaticVehicleEx(470,-234.4379,2608.8799,62.3828,179.2619,1,2,180); // patriot
    AddStaticVehicleEx(445,-225.5041,2595.5454,62.3828,181.2976,1,2,180); // admiral
    AddStaticVehicleEx(445,-219.6843,2594.8813,62.3828,0.1925,1,2,180); // admiral
    AddStaticVehicleEx(490,-207.2590,2594.9734,62.3828,179.5573,1,2,180); // ranch
    AddStaticVehicleEx(463,-206.9666,2609.6128,62.3828,0.8738,1,2,180); // free
AddPlayerClass(24,-251.3021,2587.0161,63.5703,294.2054,0,0,0,0,0,0);
AddPlayerClass(28,-277.6555,2611.4063,62.8582,298.9054,0,0,0,0,0,0);
AddPlayerClass(103,-227.5840,2708.9937,62.9843,101.0453,0,0,0,0,0,0);
AddPlayerClass(67,-277.7000,2770.2747,61.8136,301.0753,0,0,0,0,0,0);
AddPlayerClass(25,-182.5040,2764.9187,61.6889,217.1012,0,0,0,0,0,0);
AddPlayerClass(107,-169.2396,2699.8821,62.4992,93.6467,0,0,0,0,0,0);
AddPlayerClass(8,-1390.9521,2635.0664,55.9844,85.5273,0,0,0,0,0,0);
AddPlayerClass(42,-1477.1383,2700.9443,55.8359,152.8605,0,0,0,0,0,0);
AddPlayerClass(268,-1562.6176,2638.4490,55.8359,301.8344,0,0,0,0,0,0);
AddPlayerClass(6,-1514.5270,2522.0100,55.8409,4.1078,0,0,0,0,0,0);
AddPlayerClass(50,-1459.2069,2618.0579,58.7734,171.0260,0,0,0,0,0,0);
AddPlayerClass(292,-1319.6302,2698.1245,50.2663,275.0610,0,0,0,0,0,0);
return 1;
}
public OnGameModeExit()
{
for(new i=0;i<MAX_PLAYERS;i++)
{
if(IsPlayerNPC(i)) return 1;
new INI:File = INI_Open(UserPath(i));
    INI_SetTag(File,\"data\");
    INI_WriteInt(File,\"Adminlevel\",PlayerInfo[pAdminlevel]);
    INI_WriteInt(File,\"Kills\",PlayerInfo[pKills]);
    INI_WriteInt(File,\"Deaths\",PlayerInfo[pDeaths]);
    INI_WriteInt(File,\"Cash\",PlayerInfo[pCash]);
    INI_WriteInt(File,\"BankCash\",PlayerInfo[pBankCash]);
    INI_WriteInt(File,\"SilencedSkill\",PlayerInfo[pSilencedS]);
    INI_WriteInt(File,\"9mmSkill\",PlayerInfo[p9mmS]);
    INI_WriteInt(File,\"ShotgunSkill\",PlayerInfo[pShotgunS]);
    INI_WriteInt(File,\"CombatSkill\",PlayerInfo[pCombatS]);
    INI_WriteInt(File,\"MP5Skill\",PlayerInfo[pMP5S]);
    INI_WriteInt(File,\"UziSkill\",PlayerInfo[pUZIS]);
    INI_WriteInt(File,\"M4Skill\",PlayerInfo[pM4S]);
    INI_WriteInt(File,\"AK47Skill\",PlayerInfo[pAKS]);
    INI_WriteInt(File,\"DeagleSkill\",PlayerInfo[pDeagleS]);
    INI_WriteInt(File,\"MediumHP\",PlayerInfo[pMediumHP]);
    INI_WriteInt(File,\"LargeHP\",PlayerInfo[pLargeHP]);
    INI_WriteInt(File,\"Armour\",PlayerInfo[pArmour]);
    INI_WriteInt(File,\"Parts\",PlayerInfo[pParts]);
    INI_WriteInt(File,\"Int\",PlayerInfo[pInt]);
    INI_WriteInt(File,\"VW\",PlayerInfo[pVW]);
    INI_Close(File);
TextDrawDestroy(pointTXD);
    PlayerTextDrawDestroy(i,cashtxd);
    PlayerTextDrawDestroy(i,HPxd);
      PlayerTextDrawDestroy(i,box);
PlayerTextDrawDestroy(i,speed);
PlayerTextDrawDestroy(i,health);
}
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
    if(IsPlayerNPC(playerid)) return 1;
SetPlayerTeamFromClass(playerid, classid);
return 1;
}
public OnPlayerConnect(playerid)
{
      if(IsPlayerNPC(playerid)) return 1;
    if(fexist(UserPath(playerid)))
    {
        INI_ParseFile(UserPath(playerid), \"LoadUser_%s\", .bExtra = true, .extra = playerid);
        ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,\"\"COL_WHITE\"Bejelentkezés\",\"\"COL_WHITE\"Írd be a jelszavad.\",\"Belépés\",\"Kilépés\");
    }
    else
    {
        ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,\"\"COL_WHITE\"Regisztráció...\",\"\"COL_WHITE\"Írj be egy jelszót a regisztrációhoz.\",\"Regisztrálok\",\"Kilépés\");
    }
     HPxd[playerid] = CreatePlayerTextDraw(playerid,500,110,\"‡let: 200%\");
PlayerTextDrawFont(playerid,HPxd[playerid],3);
PlayerTextDrawLetterSize(playerid,HPxd[playerid],0.2,1.9);
PlayerTextDrawColor(playerid,HPxd[playerid],COLOR_PURPLE);
PlayerTextDrawSetOutline(playerid,HPxd[playerid],true);
PlayerTextDrawSetProportional(playerid,HPxd[playerid],true);
PlayerTextDrawSetShadow(playerid,HPxd[playerid],1);
    pointTXD = TextDrawCreate(500,130,\"East: 0 West: 0\");
TextDrawFont(pointTXD,3);
TextDrawLetterSize(pointTXD,0.3,2.5);
TextDrawColor(pointTXD,COLOR_WHITE);
TextDrawSetOutline(pointTXD,true);
TextDrawSetProportional(pointTXD,true);
TextDrawSetShadow(pointTXD,1);
    cashtxd[playerid] = CreatePlayerTextDraw(playerid,500,95,\"Cash: 0\");
PlayerTextDrawFont(playerid,cashtxd[playerid],3);
PlayerTextDrawLetterSize(playerid,cashtxd[playerid],0.3,2.0);
PlayerTextDrawColor(playerid,cashtxd[playerid],COLOR_GREEN);
PlayerTextDrawSetOutline(playerid,cashtxd[playerid],true);
PlayerTextDrawSetProportional(playerid,cashtxd[playerid],true);
PlayerTextDrawSetShadow(playerid,cashtxd[playerid],1);
box[playerid] = CreatePlayerTextDraw(playerid,618,389,\"_\");
PlayerTextDrawLetterSize(playerid,box[playerid],0.5,3.999996);
PlayerTextDrawUseBox(playerid,box[playerid],1);
PlayerTextDrawBoxColor(playerid,box[playerid],0x00000060);
PlayerTextDrawTextSize(playerid,box[playerid],473,0);
speed[playerid] = CreatePlayerTextDraw(playerid,478,389,\"_\");
PlayerTextDrawLetterSize(playerid,speed[playerid],0.37,1.099999);
PlayerTextDrawSetOutline(playerid,speed[playerid],1);
health[playerid] = CreatePlayerTextDraw(playerid,478,401,\"_\");
PlayerTextDrawLetterSize(playerid,health[playerid],0.37,1.099999);
PlayerTextDrawSetOutline(playerid,health[playerid],1);
for(new wep=0;wep<47;wep++) Weapon[playerid][wep] = false;
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
    if(IsPlayerNPC(playerid)) return 1;
new INI:File = INI_Open(UserPath(playerid));
    INI_SetTag(File,\"data\");
    INI_WriteInt(File,\"Adminlevel\",PlayerInfo[playerid][pAdminlevel]);
    INI_WriteInt(File,\"Kills\",PlayerInfo[playerid][pKills]);
    INI_WriteInt(File,\"Deaths\",PlayerInfo[playerid][pDeaths]);
    INI_WriteInt(File,\"Cash\",PlayerInfo[playerid][pCash]);
    INI_WriteInt(File,\"BankCash\",PlayerInfo[playerid][pBankCash]);
    INI_WriteInt(File,\"SilencedSkill\",PlayerInfo[playerid][pSilencedS]);
    INI_WriteInt(File,\"9mmSkill\",PlayerInfo[playerid][p9mmS]);
    INI_WriteInt(File,\"ShotgunSkill\",PlayerInfo[playerid][pShotgunS]);
    INI_WriteInt(File,\"CombatSkill\",PlayerInfo[playerid][pCombatS]);
    INI_WriteInt(File,\"MP5Skill\",PlayerInfo[playerid][pMP5S]);
    INI_WriteInt(File,\"UziSkill\",PlayerInfo[playerid][pUZIS]);
    INI_WriteInt(File,\"M4Skill\",PlayerInfo[playerid][pM4S]);
    INI_WriteInt(File,\"AK47Skill\",PlayerInfo[playerid][pAKS]);
    INI_WriteInt(File,\"DeagleSkill\",PlayerInfo[playerid][pDeagleS]);
    INI_WriteInt(File,\"MediumHP\",PlayerInfo[playerid][pMediumHP]);
    INI_WriteInt(File,\"LargeHP\",PlayerInfo[playerid][pLargeHP]);
    INI_WriteInt(File,\"Armour\",PlayerInfo[playerid][pArmour]);
    INI_WriteInt(File,\"Parts\",PlayerInfo[playerid][pParts]);
    INI_WriteInt(File,\"Int\",PlayerInfo[playerid][pInt]);
    INI_WriteInt(File,\"VW\",PlayerInfo[playerid][pVW]);
    INI_Close(File);
TextDrawDestroy(pointTXD);
    PlayerTextDrawDestroy(playerid,cashtxd[playerid]);
    PlayerTextDrawDestroy(playerid,HPxd[playerid]);
      PlayerTextDrawDestroy(playerid,box[playerid]);
PlayerTextDrawDestroy(playerid,speed[playerid]);
PlayerTextDrawDestroy(playerid,health[playerid]);
      for(new wep=0;wep<47;wep++) Weapon[playerid][wep] = false;
return 1;
}
public OnPlayerSpawn(playerid)
{
    if(IsPlayerNPC(playerid))
    {
new npcname[MAX_PLAYER_NAME];
       GetPlayerName(playerid, npcname, sizeof(npcname));
       if(!strcmp(npcname, \"Shop1\", true))
       {
       new Text3D:label = Create3DTextLabel(\"| Shop | \'KEY_YES\' a használathoz!(Y)\", COLOR_WHITE, 30.0, 40.0, 50.0, 20.0, 0);
       Attach3DTextLabelToPlayer(label, playerid, 0.0, 0.0, 0.3);
       SetPlayerSkin(playerid,296);
       }
       if(!strcmp(npcname,\"Shop2\",true))
       {
       new Text3D:label = Create3DTextLabel(\"| Shop | \'KEY_YES\' a használathoz!(Y)\", COLOR_WHITE, 30.0, 40.0, 50.0, 20.0, 0);
       Attach3DTextLabelToPlayer(label, playerid, 0.0, 0.0, 0.3);
       SetPlayerSkin(playerid,1);
       }
return 1;
}
SendClientMessage(playerid,COLOR_GREEN,\"[sZERVER]Fegyver vételhez használd: /ws \");
SetPlayerRandomSpawn(playerid);
SetPlayerHealth(playerid,200.0);
Fosztogat[playerid]=0;
ApplyAnimation(playerid,\"BOMBER\",\"BOM_Plant\",4.1,0,1,1,0,100,1);
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
if(IsPlayerConnected(playerid) || IsPlayerConnected(killerid))
{
       new Float:X,Float:Y,Float:Z;
       GetPlayerPos(playerid, X, Y, Z);
       DropGun(playerid, GetPlayerWeapon(playerid),GetPlayerAmmo(playerid),X,Y,Z,GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid));
       PlayerInfo[killerid][pKills]++;
       PlayerInfo[playerid][pDeaths]++;
       PlayerInfo[killerid][pCash]=PlayerInfo[killerid][pCash]+200;
       SendClientMessage(killerid,COLOR_PURPLE,\"+200Cash\");
fosztogatomeghal(playerid);
if(PlayerInfo[playerid][pCash]!=0)
{
   if(300 < PlayerInfo[playerid][pCash] < 3000)
   {
       PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]-300;
   }
   else if(3000 < PlayerInfo[playerid][pCash] < 10000)
   {
       PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]-800;
   }
   else if(10000 < PlayerInfo[playerid][pCash] < 30000)
   {
       PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]-2500;
   }
   else if(30000 < PlayerInfo[playerid][pCash] < 500000)
   {
       PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]-4000;
   }
   else if(50000 < PlayerInfo[playerid][pCash] < 100000000)
   {
       PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]-5000;
   }
}
//TEAMKILL
    if(GetPlayerTeam(killerid) == GetPlayerTeam(playerid))
    {
        TeamKilling[killerid]++;
        if(TeamKilling[killerid] == 3)
        {
            new name[MAX_PLAYER_NAME], string[128];
            GetPlayerName(killerid, name, sizeof(name));
            format(string, sizeof(string), \"[sZERVER] %s ki lett rugva!Oka: TeamKill\", name);
            SendClientMessageToAll(0xFFFF00AA, string);
            Kick(killerid);
        }
    }
//TEAMKILL END
}
return 1;
}
public OnPlayerText(playerid, text[])
{
    if(text[0] == \'#\')
    {
    new string[128];
GetPlayerName(playerid, string, sizeof(string));
    format(string, sizeof(string), \"[TeamChat] %s (%d): %s\", string, playerid, text[1]);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i) && GetPlayerTeam(i) == GetPlayerTeam(playerid)) SendClientMessage(i, GetPlayerColor(playerid), string);
    }
    return 1;
    }
return 1;
}
public OnPlayerPickUpDynamicPickup(playerid, pickupid)
{
for(new pi=0;pi<MAX_P1;pi++)
{
if(pickupid == RobPickup1[pi])
    {
        if(GetPlayerTeam(playerid)==1)
   {
           fosztogatas1(playerid);
           DestroyDynamicPickup(RobPickup1[pi]);
   }
   else if(GetPlayerTeam(playerid)==0)
   {
         SendClientMessage(playerid,COLOR_ERROR,\"[sZERVER]Ez a saját csapatodé!\");
   }
}
}
for(new pi1=0;pi1<MAX_P2;pi1++)
{
if(pickupid == RobPickup2[pi1])
    {
        if(GetPlayerTeam(playerid)==0)
   {
           fosztogatas2(playerid);
           DestroyDynamicPickup(RobPickup2[pi1]);
   }
   else if(GetPlayerTeam(playerid)==1)
   {
         SendClientMessage(playerid,COLOR_ERROR,\"[sZERVER]Ez a saját csapatodé!\");
   }
}
}
return 1;
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if(PRESSED(KEY_YES))
{
    if(IsPlayerInRangeOfPoint(playerid,1.5,-1486.0469,2651.1667,55.8359))
    {
        if(GetPlayerTeam(playerid)!=0) return SendClientMessage(playerid,COLOR_RED,\"[HIBA]Ez nem a csapatod boltosa!\");
   ShowPlayerDialog(playerid,DIALOG_SHOPPER,DIALOG_STYLE_LIST,\"Shopper\",\"Fegyver skillek\\nVásárlás\\nAlkatrészek eladása\",\"OK\",\"Close\");
}
if(IsPlayerInRangeOfPoint(playerid,1.5,-245.3808,2657.6045,62.6776))
    {
        if(GetPlayerTeam(playerid)!=1) return SendClientMessage(playerid,COLOR_RED,\"[HIBA]Ez nem a csapatod boltosa\");
   ShowPlayerDialog(playerid,DIALOG_SHOPPER,DIALOG_STYLE_LIST,\"Shopper\",\"Fegyver skillek\\nVásárlás\\nAlkatrészek eladása\",\"OK\",\"Bezár\");
}
}
if(PRESSED(KEY_SPRINT|KEY_WALK))
{
new invs[100];
new medium = PlayerInfo[playerid][pMediumHP];
new large = PlayerInfo[playerid][pLargeHP];
new armorl1 = PlayerInfo[playerid][pArmour];
new parts = PlayerInfo[playerid][pParts];
format(invs,sizeof(invs),\"Közepes elsõsegély %ddb \\nNagy elsõsegély %ddb \\nGolyóállo mellény %ddb \\nAlkatrészek %ddb \",medium,large,armorl1,parts);
ShowPlayerDialog(playerid,inventory, DIALOG_STYLE_LIST, \"Leltár\", invs, \"Ok\", \"Bezár\");
}
return 1;
}
public OnPlayerUpdate(playerid)
{
    GetPlayerHealth(playerid,PlayerInfo[playerid][pHealthCurr]);
    if(PlayerInfo[playerid][pHealthCurr] > 200.0 )
        SetPlayerHealth( playerid, 200.0 );
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    switch( dialogid )
    {
        case DIALOG_REGISTER:
        {
            if (!response) return Kick(playerid);
            if(response)
            {
                if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, \"\"COL_WHITE\"Registering...\",\"\"COL_RED\"You have entered an invalid password.\\n\"COL_WHITE\"Type your password below to register a new account.\",\"Register\",\"Quit\");
                new INI:File = INI_Open(UserPath(playerid));
                INI_SetTag(File,\"data\");
                INI_WriteInt(File,\"Password\",udb_hash(inputtext));
                INI_WriteInt(File,\"Adminlevel\",0);
                INI_WriteInt(File,\"Kills\",0);
                INI_WriteInt(File,\"Deaths\",0);
                INI_WriteInt(File,\"Cash\",5000);
                INI_WriteInt(File,\"BankCash\",0);
                INI_WriteInt(File,\"SilencedSkill\",1);
                INI_WriteInt(File,\"9mmSkill\",1);
                INI_WriteInt(File,\"ShotgunSkill\",1);
                INI_WriteInt(File,\"CombatSkill\",1);
                INI_WriteInt(File,\"MP5Skill\",1);
                INI_WriteInt(File,\"UziSkill\",1);
                INI_WriteInt(File,\"M4Skill\",1);
                INI_WriteInt(File,\"AK47Skill\",1);
                INI_WriteInt(File,\"DeagleSkill\",1);
                INI_WriteInt(File,\"MediumHP\",1);
                INI_WriteInt(File,\"LargeHP\",1);
                INI_WriteInt(File,\"Armour\",1);
                INI_WriteInt(File,\"Parts\",0);
                INI_WriteInt(File,\"Int\",0);
                INI_WriteInt(File,\"VW\",0);
                INI_Close(File);
                INI_ParseFile(UserPath(playerid), \"LoadUser_%s\", .bExtra = true, .extra = playerid);
                SendClientMessage(playerid,COLOR_SIKER,\"[sZERVER]Sikeres regisztráció!\");
                SendClientMessage(playerid,COLOR_SIKER,\"**----------------------------------------------------**\");
                SendClientMessage(playerid,COLOR_SIKER,\"[sZERVER]További segitségért használd a /help parancsot!\");
                SendClientMessage(playerid,COLOR_SIKER,\"**----------------------------------------------------**\");
                SetTimerEx(\"Skillupdate\",5000,true,\"i\",playerid);
                SetTimerEx(\"pointupdate\",2000,1,\"i\",playerid);
      SetTimerEx(\"cashupdate\",3500,true,\"i\",playerid);
      SetTimerEx(\"hpupdate\",2000,true,\"i\",playerid);
      TextDrawShowForPlayer(playerid, pointTXD);
      PlayerTextDrawShow(playerid, cashtxd[playerid]);
      PlayerTextDrawShow(playerid, HPxd[playerid]);
            }
        }
        case DIALOG_LOGIN:
        {
            if ( !response ) return Kick ( playerid );
            if( response )
            {
                if(udb_hash(inputtext) == PlayerInfo[playerid][pPassword])
                {
                    INI_ParseFile(UserPath(playerid), \"LoadUser_%s\", .bExtra = true, .extra = playerid);
                    SendClientMessage(playerid,COLOR_SIKER,\"[sZERVER]Sikeresen bejelentkeztél!\");
                    SendClientMessage(playerid,COLOR_SIKER,\"**----------------------------------------------------**\");
                   SendClientMessage(playerid,COLOR_SIKER,\"[sZERVER]További segitségért használd a /help parancsot!\");
                   SendClientMessage(playerid,COLOR_SIKER,\"**----------------------------------------------------**\");
                    SetTimerEx(\"Skillupdate\",5000,true,\"i\",playerid);
                    SetTimerEx(\"pointupdate\",2000,1,\"i\",playerid);
                SetTimerEx(\"cashupdate\",3500,true,\"i\",playerid);
                SetTimerEx(\"hpupdate\",2000,true,\"i\",playerid);
                TextDrawShowForPlayer(playerid, pointTXD);
         PlayerTextDrawShow(playerid, cashtxd[playerid]);
         PlayerTextDrawShow(playerid, HPxd[playerid]);
                }
                else
                {
                    ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,\"\"COL_WHITE\"Belépés\",\"\"COL_RED\"Helytelen jelszót írtál be.\\n\"COL_WHITE\"Írd be a jelszavad a bejelentkezéshez.\",\"Belépés\",\"Kilépés\");
                }
                return 1;
            }
        }
    }
    if(dialogid == DIALOG_SHOP)
    {
        if(response)
{
   if(listitem == 0) ////////////MEDIUM HP////////////////
        {
         ShowPlayerDialog(playerid,DIALOG_MHP,DIALOG_STYLE_INPUT,\"Közepes elsõsegélycsomag\",\"Darabszám{00CED1}(1csomag = 500Cash):\",\"Ok\",\"Bezár\");
   }
   if(listitem == 1)////////////////LARGE HP////////////////
        {
      ShowPlayerDialog(playerid,DIALOG_LHP,DIALOG_STYLE_INPUT,\"Nagy elsõsegélycsomag\",\"Darabszám{00CED1}(1csomag = 800Cash):\",\"Ok\",\"Bezér\");
   }
   if(listitem == 2)////////////////Armour////////////////
        {
     ShowPlayerDialog(playerid,DIALOG_ARMOR,DIALOG_STYLE_INPUT,\"Golyóálló Mellény\",\"Darabszám{00CED1}(1db = 2000Cash):\",\"Ok\",\"Bezár\");
   }
}
}
if(dialogid == DIALOG_BANKHOME)
    {
        if(response)
{
   if(listitem == 0) ////////////BANKCHECK////////////////
        {
         new Wealth[128];
              format( Wealth, sizeof Wealth, \"%iCash van a bankszámládon. \", PlayerInfo[playerid][pBankCash] );
              SendClientMessage(playerid, COLOR_YELLOW, Wealth);
                ShowPlayerDialog( playerid, DIALOG_BANKHOME, DIALOG_STYLE_LIST, \"Bank\", \"Számlaegyenleg \\nPénzkivétel \\nPénzbefizetés\", \"Ok\", \"Bezár\" );
   }
   if(listitem == 1)///////////////WITHDRAW////////////////
        {
      ShowPlayerDialog( playerid, DIALOG_BANKWITHDRAW, DIALOG_STYLE_INPUT, \"Pénzkivétel\", \"Írd be a kivenni kívánt összeget. \", \"Ok\", \"Vissza\" );
   }
   if(listitem == 2)///////////////DEPOSIT////////////////
        {
     ShowPlayerDialog( playerid, DIALOG_BANKDEPOSIT, DIALOG_STYLE_INPUT, \"Pénzbefizetés\", \"Írd be a befizetni kívánt összeget. \", \"Ok\", \"Vissza\" );
   }
}
}
if(dialogid == DIALOG_BANKWITHDRAW)
    {
        if(response)
        {
            if( !isnumeric( inputtext ) ) return SendClientMessage(playerid, COLOR_ERROR, \"Csak számok! \");
           if( strval( inputtext ) > PlayerInfo[playerid][pBankCash] ) return SendClientMessage( playerid, COLOR_ERROR, \"Nincs ennyi pénz a számládon! \" ), ShowPlayerDialog( playerid, DIALOG_BANKWITHDRAW, DIALOG_STYLE_INPUT, \"Pénzkivétel\", \"Írd be a kivenni kívánt összeget.\", \"Ok\", \"Vissza\" );
            PlayerInfo[playerid][pBankCash] = ( PlayerInfo[playerid][pBankCash] - strval( inputtext ) );
             PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]+strval(inputtext);
              new String[128];
              format( String, sizeof String, \"Kivettél %iCasht a számládról. Még maradt %iCash a bankban. \", strval( inputtext ), PlayerInfo[playerid][pBankCash] );
            SendClientMessage( playerid, COLOR_YELLOW, String );
            ShowPlayerDialog( playerid, DIALOG_BANKHOME, DIALOG_STYLE_LIST, \"Bank\", \"Számlaegyenleg \\nPénzkivétel \\nPénzbefizetés\", \"Ok\", \"Bezár\" );
        }
    }
      if(dialogid == DIALOG_BANKDEPOSIT)
    {
        if(response)
        {
            if( !isnumeric( inputtext ) ) return SendClientMessage(playerid, COLOR_ERROR, \"Csak számok! \");
   if( PlayerInfo[playerid][pCash] < strval( inputtext ) ) return SendClientMessage( playerid, COLOR_ERROR, \"Nincs ennyi pénz nálad. \"), ShowPlayerDialog( playerid, DIALOG_BANKDEPOSIT, DIALOG_STYLE_INPUT, \"Pénzbefizetés\", \"Írd be a befizetni kívánt összeget. \", \"Ok\", \"Vissza\" );
            PlayerInfo[playerid][pBankCash] = ( PlayerInfo[playerid][pBankCash] + strval( inputtext ) );
            PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]-strval(inputtext);
           new String[128];
            format( String, sizeof String, \"befizettél %iCasht a számládra! %iCash van a bankban. \", strval( inputtext ), PlayerInfo[playerid][pBankCash] );
             SendClientMessage( playerid, COLOR_YELLOW, String );
              ShowPlayerDialog( playerid, DIALOG_BANKHOME, DIALOG_STYLE_LIST, \"Bank\", \"Számlaegyenleg \\nPénzkivétel \\nPénzbefizetés\", \"Ok\", \"Bezár\" );
}
    }
    if(dialogid == DIALOG_WEPS)
{
    if(response)
    {
        if(listitem == 0) ////////////9MM////////////////
        {
         ShowPlayerDialog(playerid,DIALOG_COLT,DIALOG_STYLE_INPUT,\"9MM Skill\",\"Írd be a kívánt Képességi szintet(1-10){00CED1}(1Szint = 100Cash):\",\"Ok\",\"Close\");
   }
   if(listitem == 1)////////////////Silenced////////////////
        {
      ShowPlayerDialog(playerid,DIALOG_SILENCED,DIALOG_STYLE_INPUT,\"Silenced Skill\",\"Írd be a kívánt Képességi szintet(1-10){00CED1}(1Szint = 100Cash):\",\"Ok\",\"Close\");
   }
   if(listitem == 2)////////////////Deagle////////////////
        {
     ShowPlayerDialog(playerid,DIALOG_DEAGLE,DIALOG_STYLE_INPUT,\"Deagle Skill\",\"Írd be a kívánt Képességi szintet(1-10){00CED1}(1Szint = 100Cash):\",\"Ok\",\"Close\");
   }
   if(listitem == 3)////////////////Shotgun////////////////
        {
      ShowPlayerDialog(playerid,DIALOG_SHOTGUN,DIALOG_STYLE_INPUT,\"Shotgun Skill\",\"Írd be a kívánt Képességi szintet(1-10){00CED1}(1Szint = 100Cash):\",\"Ok\",\"Close\");
   }
   if(listitem == 4)////////////////Combat////////////////
        {
           ShowPlayerDialog(playerid,DIALOG_COMBAT,DIALOG_STYLE_INPUT,\"Combat Skill\",\"Írd be a kívánt Képességi szintet(1-10){00CED1}(1Szint = 100Cash):\",\"Ok\",\"Close\");
   }
   if(listitem == 5)////////////////MP5////////////////
        {
           ShowPlayerDialog(playerid,DIALOG_MP5,DIALOG_STYLE_INPUT,\"MP5 Skill\",\"Írd be a kívánt Képességi szintet1-10){00CED1}(1Szint = 100Cash):\",\"Ok\",\"Close\");
   }
   if(listitem == 6)////////////////UZI////////////////
        {
           ShowPlayerDialog(playerid,DIALOG_UZI,DIALOG_STYLE_INPUT,\"UZI Skill\",\"Írd be a kívánt Képességi szintet(1-10){00CED1}(1Szint = 100Cash):\",\"Ok\",\"Close\");
   }
   if(listitem == 7)////////////////M4////////////////
        {
           ShowPlayerDialog(playerid,DIALOG_M4,DIALOG_STYLE_INPUT,\"M4 Skill\",\"Írd be a kívánt Képességi szintet(1-10){00CED1}(1Szint = 100Cash):\",\"Ok\",\"Close\");
   }
   if(listitem == 8)////////////////AK47////////////////
        {
           ShowPlayerDialog(playerid,DIALOG_AK,DIALOG_STYLE_INPUT,\"AK47 Skill\",\"Írd be a kívánt Képességi szintet(1-10){00CED1}(1Szint = 100Cash):\",\"Ok\",\"Close\");
   }
         }
}
if(dialogid == DIALOG_SHOPPER)
{
    if(response)
    {
   if(listitem == 0)////////////////Weapon Skill////////////////
        {
             ShowPlayerDialog(playerid, DIALOG_WEPS, DIALOG_STYLE_LIST, \"Fegyverképességek\", \"9mm\\nSilenced\\nDeagle\\nShotgun\\nCombat\\nMP5\\nUzi\\nM4\\nAK47\", \"Ok\", \"Bezár\");
   }
   if(listitem == 1)////////////////Shop////////////////
        {
     ShowPlayerDialog(playerid, DIALOG_SHOP, DIALOG_STYLE_LIST, \"Bolt\", \"{FFFFFF}Közepes elsõsegélycsomag{F81414}\\t500Cash\\n{FFFFFF}Nagy elsõsegélycsomag{F81414}\\t800Cash\\n{FFFFFF}Golyóálló Mellény{F81414}\\t2000Cash\", \"Ok\", \"Bezár\");
   }
   if(listitem == 2)////////////////ALKATRÉSZEK////////////////
        {
     ShowPlayerDialog(playerid,DIALOG_PARTS,DIALOG_STYLE_INPUT,\"Alkatrész árusítás\",\"Írd be az eladni kívánt darabszámot{00CED1}(1db alkatrést = 500Cash):\",\"Ok\",\"Bezár\");
   }
    }
}
    if(dialogid == DIALOG_COLT)
    {
        if(response)
        {
            new string[128];
            if(!strval(inputtext))
                ShowPlayerDialog(playerid,DIALOG_COLT,DIALOG_STYLE_INPUT,\"9MM Skill\",\"Írd be a kívánt Képességi szintet(1-10){00CED1}(1Szint = 1000Cash)\",\"Ok\",\"Close\");
   if(0> strval(inputtext) || strval(inputtext) > 10) return SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]Szint: 1-10\");
            if((strval(inputtext)*1000) > PlayerInfo[playerid][pCash]) return SendClientMessage(playerid, COLOR_ERROR, \"[HIBA]Nincs elég pénzed!\");
            if((strval(inputtext)*100) < PlayerInfo[playerid][p9mmS]) return SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]A képességed magasabb szinten van!\");
   PlayerInfo[playerid][p9mmS]=(strval(inputtext)*100);
   PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]-(strval(inputtext)*1000);
   format(string,sizeof(string),\"[bOLT]Fejlesztés Sikeres! 9mm Skill: %d %\",(strval(inputtext)*10));
   SendClientMessage(playerid,COLOR_SIKER,string);
        }
    }
    if(dialogid == DIALOG_SILENCED)
    {
        if(response)
        {
            new string[128];
            if(!strval(inputtext))
                ShowPlayerDialog(playerid,DIALOG_SILENCED,DIALOG_STYLE_INPUT,\"Silenced Skill\",\"Írd be a kívánt Képességi szintet(1-10){00CED1}(1Szint = 1000Cash)\",\"Ok\",\"Close\");
   if(0> strval(inputtext) || strval(inputtext) > 10) return SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]Szint: 1-10\");
            if(strval(inputtext) > PlayerInfo[playerid][pCash]) return SendClientMessage(playerid, COLOR_ERROR, \"[HIBA]Nincs elég pénzed.\");
            if((strval(inputtext)*1000) < PlayerInfo[playerid][pSilencedS]) return SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]A képességed magasabb szinten van!\");
   PlayerInfo[playerid][pSilencedS]=(strval(inputtext)*100);
   PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]-(strval(inputtext)*1000);
   format(string,sizeof(string),\"[bOLT]Fejlesztés Sikeres! Silenced Skill: %d %\",(strval(inputtext)*10));
   SendClientMessage(playerid,COLOR_SIKER,string);
        }
    }
    if(dialogid == DIALOG_DEAGLE)
    {
        if(response)
        {
            new string[128];
            if(!strval(inputtext))
                ShowPlayerDialog(playerid,DIALOG_DEAGLE,DIALOG_STYLE_INPUT,\"Deagle Skill\",\"Írd be a kívánt Képességi szintet(1-10){00CED1}(1Szint = 1000Cash)\",\"Ok\",\"Close\");
   if(0> strval(inputtext) || strval(inputtext) > 10) return SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]Szint: 1-10\");
            if(strval(inputtext) > PlayerInfo[playerid][pCash]) return SendClientMessage(playerid, COLOR_ERROR, \"[HIBA]Nincs elég pénzed!\");
            if((strval(inputtext)*1000) < PlayerInfo[playerid][pDeagleS]) return SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]A képességed magasabb szinten van!\");
   PlayerInfo[playerid][pDeagleS]=(strval(inputtext)*100);
   PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]-(strval(inputtext)*1000);
   format(string,sizeof(string),\"[bOLT]Fejlesztés Sikeres! Desert Eagle Skill: %d %\",(strval(inputtext)*10));
   SendClientMessage(playerid,COLOR_SIKER,string);
        }
    }
    if(dialogid == DIALOG_SHOTGUN)
    {
        if(response)
        {
            new string[128];
            if(!strval(inputtext))
                ShowPlayerDialog(playerid,DIALOG_SHOTGUN,DIALOG_STYLE_INPUT,\"Shotgun Skill\",\"Írd be a kívánt Képességi szintet(1-10){00CED1}(1Szint = 1000Cash)\",\"Ok\",\"Close\");
   if(0> strval(inputtext) || strval(inputtext) > 10) return SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]Szint: 1-10\");
            if(strval(inputtext) > PlayerInfo[playerid][pCash]) return SendClientMessage(playerid, COLOR_ERROR, \"[HIBA]Nincs elég pénzed!\");
            if((strval(inputtext)*1000) < PlayerInfo[playerid][pShotgunS]) return SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]A képességed magasabb szinten van!\");
   PlayerInfo[playerid][pShotgunS]=(strval(inputtext)*100);
   PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]-(strval(inputtext)*1000);
   format(string,sizeof(string),\"[bOLT]Fejlesztés Sikeres! Shotgun Skill: %d %\",(strval(inputtext)*10));
   SendClientMessage(playerid,COLOR_SIKER,string);
        }
    }
    if(dialogid == DIALOG_COMBAT)
    {
        if(response)
        {
            new string[128];
            if(!strval(inputtext))
                ShowPlayerDialog(playerid,DIALOG_COMBAT,DIALOG_STYLE_INPUT,\"Combat Skill\",\"Írd be a kívánt Képességi szintet(1-10){00CED1}(1Szint = 1000Cash)\",\"Ok\",\"Close\");
   if(0> strval(inputtext) || strval(inputtext) > 10) return SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]Szint: 1-10\");
            if(strval(inputtext) > PlayerInfo[playerid][pCash]) return SendClientMessage(playerid, COLOR_ERROR, \"[HIBA]Nincs elég pénzed!\");
            if((strval(inputtext)*1000) < PlayerInfo[playerid][pCombatS]) return SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]A képességed magasabb szinten van!\");
   PlayerInfo[playerid][pCombatS]=(strval(inputtext)*100);
   PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]-(strval(inputtext)*1000);
   format(string,sizeof(string),\"[bOLT]Fejlesztés Sikeres! Combat Shotgun Skill: %d %\",(strval(inputtext)*10));
   SendClientMessage(playerid,COLOR_SIKER,string);
        }
    }
    if(dialogid == DIALOG_MP5)
    {
        if(response)
        {
            new string[128];
            if(!strval(inputtext))
                ShowPlayerDialog(playerid,DIALOG_MP5,DIALOG_STYLE_INPUT,\"MP5 Skill\",\"Írd be a kívánt Képességi szintet(1-10){00CED1}(1Szint = 1000Cash)\",\"Ok\",\"Close\");
   if(0> strval(inputtext) || strval(inputtext) > 10) return SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]Szint: 1-10\");
            if(strval(inputtext) > PlayerInfo[playerid][pCash]) return SendClientMessage(playerid, COLOR_ERROR, \"[HIBA]Nincs elég pénzed!\");
            if((strval(inputtext)*1000) < PlayerInfo[playerid][pMP5S]) return SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]A képességed magasabb szinten van!\");
   PlayerInfo[playerid][pMP5S]=(strval(inputtext)*100);
   PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]-(strval(inputtext)*1000);
   format(string,sizeof(string),\"[bOLT]Fejlesztés Sikeres! MP5 Skill: %d %\",(strval(inputtext)*10));
   SendClientMessage(playerid,COLOR_SIKER,string);
        }
    }
    if(dialogid == DIALOG_UZI)
    {
        if(response)
        {
            new string[128];
            if(!strval(inputtext))
                ShowPlayerDialog(playerid,DIALOG_UZI,DIALOG_STYLE_INPUT,\"UZI Skill\",\"Írd be a kívánt Képességi szintet(1-10){00CED1}(1Szint = 1000Cash)\",\"Ok\",\"Close\");
   if(0> strval(inputtext) || strval(inputtext) > 10) return SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]Szint: 1-10\");
            if(strval(inputtext) > PlayerInfo[playerid][pCash]) return SendClientMessage(playerid, COLOR_ERROR, \"[HIBA]Nincs elég pénzed!\");
            if((strval(inputtext)*1000) < PlayerInfo[playerid][pUZIS]) return SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]A képességed magasabb szinten van!\");
   PlayerInfo[playerid][pUZIS]=(strval(inputtext)*100);
   PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]-(strval(inputtext)*1000);
   format(string,sizeof(string),\"[bOLT]Fejlesztés Sikeres! UZI Skill: %d %\",(strval(inputtext)*10));
   SendClientMessage(playerid,COLOR_SIKER,string);
        }
    }
    if(dialogid == DIALOG_M4)
    {
        if(response)
        {
            new string[128];
            if(!strval(inputtext))
                ShowPlayerDialog(playerid,DIALOG_M4,DIALOG_STYLE_INPUT,\"M4 Skill\",\"Írd be a kívánt Képességi szintet(1-10){00CED1}(1Szint = 1000Cash)\",\"Ok\",\"Close\");
   if(0> strval(inputtext) || strval(inputtext) > 10) return SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]Szint: 1-10\");
            if(strval(inputtext) > PlayerInfo[playerid][pCash]) return SendClientMessage(playerid, COLOR_ERROR, \"[HIBA]Nincs elég pénzed!\");
            if((strval(inputtext)*1000) < PlayerInfo[playerid][pM4S]) return SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]A képességed magasabb szinten van!\");
   PlayerInfo[playerid][pM4S]=(strval(inputtext)*100);
   PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]-(strval(inputtext)*1000);
   format(string,sizeof(string),\"[bOLT]Fejlesztés Sikeres! M4 Skill: %d %\",(strval(inputtext)*10));
   SendClientMessage(playerid,COLOR_SIKER,string);
        }
    }
    if(dialogid == DIALOG_AK)
    {
        if(response)
        {
            new string[128];
            if(!strval(inputtext))
                ShowPlayerDialog(playerid,DIALOG_AK,DIALOG_STYLE_INPUT,\"AK47 Skill\",\"Írd be a kívánt Képességi szintet(1-10){00CED1}(1Szint = 1000Cash)\",\"Ok\",\"Close\");
   if(0> strval(inputtext) || strval(inputtext) > 10) return SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]Szint: 1-10\");
            if(strval(inputtext) > PlayerInfo[playerid][pCash]) return SendClientMessage(playerid, COLOR_ERROR, \"[HIBA]Nincs elég pénzed!\");
            if((strval(inputtext)*1000) < PlayerInfo[playerid][pAKS]) return SendClientMessage(playerid,COLOR_ERROR,\"[HIBA]A képességed magasabb szinten van!\");
   PlayerInfo[playerid][pAKS]=(strval(inputtext)*100);
   PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]-(strval(inputtext)*1000);
   format(string,sizeof(string),\"[bOLT]Fejlesztés Sikeres! AK47 Skill: %d %\",(strval(inputtext)*10));
   SendClientMessage(playerid,COLOR_SIKER,string);
        }
    }
    if(dialogid == DIALOG_MHP)
    {
        if(response)
        {
            new string[128];
            if(!strval(inputtext))
                ShowPlayerDialog(playerid,DIALOG_MHP,DIALOG_STYLE_INPUT,\"Közepes csomag\",\"Darabszám{00CED1}(1csomag = 400 Cash):\",\"Ok\",\"Bezár\");
            if((strval(inputtext)*250) > PlayerInfo[playerid][pCash]) return SendClientMessage(playerid, COLOR_ERROR, \"[HIBA]Nincs elég pénzed!\");
   if((strval(inputtext)+PlayerInfo[playerid][pMediumHP]) > 10) return SendClientMessage(playerid, COLOR_ERROR, \"[HIBA]Maximum 10db lehet nálad!\");
   PlayerInfo[playerid][pMediumHP]=PlayerInfo[playerid][pMediumHP]+strval(inputtext);
   PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]-(strval(inp

68
Segítségkérés / Killtimer hiba
« Dátum: 2012. Április 25. - 16:07:41 »
megoldottam zárok

69
Segítségkérés / Killtimer hiba
« Dátum: 2012. Április 25. - 15:49:29 »
Igen akkor kellene elindulnia

70
Segítségkérés / Killtimer hiba
« Dátum: 2012. Április 24. - 19:41:05 »
Sziasztok. A következõ problémám akadt, amire nem tudok választ. Mikor a játékos meghal, és épp aktív egy cselekmény akkor törölnie kellene, de nem törli valamiért :s
 

new Fosztogat[MAX_PLAYERS];
new RobPickup1[MAX_P1];
new RobTimer1[MAX_PLAYERS];
public OnPlayerDeath(playerid, killerid, reason)
{
      //Többi kód
      if(Fosztogat[playerid]==1)
{
    SendClientMessage(playerid,COLOR_ERROR,\"[sZERVER]Ez most nem jött össze!\");
TogglePlayerControllable(playerid,1);
KillTimer(RobTimer1[playerid]);
Fosztogat[playerid]=0;
return 1;
}
     //Többi kód
return 1;
}
public OnPlayerPickUpDynamicPickup(playerid, pickupid)
{
for(new pi=0;pi<MAX_P1;pi++)
{
    if(pickupid == RobPickup1[pi])
    {
   SendClientMessage(playerid,COLOR_PURPLE,\"[sZERVER]Várj amíg befejezed!(10mp)\");
   TogglePlayerControllable(playerid,0);
   RobTimer1[playerid] = SetTimerEx(\"Fosztogatas\",10000,true,\"i\",playerid);
   Fosztogat[playerid]=1;
   ApplyAnimation(playerid,\"BOMBER\",\"BOM_Plant\",4.1,0,1,1,0,20000,1);
   DestroyDynamicPickup(RobPickup1[pi]);
}
}
return 1;
}
forward Fosztogatas(playerid);
public Fosztogatas(playerid)
{
SendClientMessage(playerid,COLOR_GREEN,\"[sZERVER]Befejezted a szórakozást. Irány ölni! (+500 Cash)\");
TogglePlayerControllable(playerid,1);
PlayerInfo[playerid][pCash]=PlayerInfo[playerid][pCash]+500;
KillTimer(RobTimer1[playerid]);
Fosztogat[playerid]=0;
return 1;
}

71
Segítségkérés / playerid,i gondok
« Dátum: 2012. Április 18. - 18:55:56 »
\"sass.bmp\"

72
Segítségkérés / Parkolás parancs
« Dátum: 2012. Április 18. - 17:46:24 »
a hiba ott van, hogy nem tudom annak a kocsinak az IDjét lekérni amelyik a játékos kocsija, és igy hiába ülök bele a jármûbe és írom be a parancsot nem parkolja oda

73
Segítségkérés / Parkolás parancs
« Dátum: 2012. Április 18. - 16:04:41 »
Sziasztok. Próbáltam megírni egy parkolási parancsot de sehogy nem jön össze, már megannyiszor nekifutottam de semmi.
 

CMD:vpark(playerid)
{
    new pName[MAX_PLAYER_NAME],Float:x,Float:y,Float:z,Float:a;
    GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
    if(PlayerInfo[playerid][VehP]!=1) return SendClientMessage(playerid,COLOR_ERROR,\"You have not car!\");
    for(new vehid=0;vehid<MAX_BVEHICLES;vehid++)
{
    if(IsPlayerInVehicle(playerid,PlayerInfo[playerid][pVehicleID]))
    {
   if(PlayerInfo[playerid][pVehicleID] != GetPlayerVehicleID(playerid)) return SendClientMessage(playerid,COLOR_ERROR,\"This is not your car!\");
   GetVehiclePos(GetPlayerVehicleID(playerid),x,y,z);
   GetVehicleZAngle(GetPlayerVehicleID(playerid),a);
   VehicleInfo[vehid][vSpawnX]=x;
   VehicleInfo[vehid][vSpawnY]=y;
   VehicleInfo[vehid][vSpawnZ]=z;
   VehicleInfo[vehid][vAngle]=a;
   SaveVehicles(vehid);
   SendClientMessage(playerid,COLOR_GREEN,\"You parked your vehicle\");
   printf(\" %s parked the car to X: %f Y: %f Z: %f, ID: %d\",pName,VehicleInfo[vehid][vSpawnX], VehicleInfo[vehid][vSpawnY], VehicleInfo[vehid][vSpawnZ],vehid);
}
}
return 1;
}

74
Leírások/Útmutatók / [Leírás]Egyszerû regisztrációs rendszer
« Dátum: 2012. Április 06. - 21:03:13 »
Sziasztok. Nemrég kezdtem el foglalkozni a y_ini include fájlal és egy Regisztrációs script tutorialt írtam róla.
Elõször is kezdjük az include hozzáadásával(.pwn fájl elejére):
 
#include <YSI\\y_ini>

 
Szükségünk lesz még: sscanf, zcmd és dudb include fájlokra is. (parancsok és jelszókhoz)
 

#include <dudb>
#include <sscanf2>
#include <zcmd>

 
Most definiáljuk a regisztráció és belépés dialogot.
 

#define DIALOG_REG 1 //regisztrációs dialog
#define DIALOG_BELEP 2 //belépés dialog

 
Definiáljuk a fájlok mentési/beolvasási helyét.
 

#define PATH \"/enmodom/%s.ini\" //scriptfiles/enmodom mappát hozzuk létre, és ide fogja menteni a regisztrált játékosok adatait

 
Egy enumba tároljuk el a változókat.
 

enum iKarakter
{
    pPass, //jelszó
    pCash, //pénzünk
    pKills, //ölések száma
    pDeaths, //halálok száma
    pScore //pontunk
}
new Jatekosinfo[MAX_PLAYERS][iKarakter];

 
Létrehozunk egy funkciót a játékos adatainak betöltésére:
 

forward Adattoltes_data(playerid,name[],value[]);
public Adattoltes_data(playerid,name[],value[])
{
    INI_Int(\"Password\",Jatekosinfo[playerid][pPass]);
    INI_Int(\"Cash\",Jatekosinfo[playerid][pCash]);
    INI_Int(\"Kills\",Jatekosinfo[playerid][pKills]);
    INI_Int(\"Deaths\",Jatekosinfo[playerid][pDeaths]);
    INI_Int(\"Score\",Jatekosinfo[playerid][pScore]);
    return 1;
}

 
Hozzunk létre egy sima stock funkciót:
 

stock Jatekosadatok(playerid)
{
new string[128],jatekosnev[MAX_PLAYER_NAME]; //létre hozunk egy szövegtárolót és a játékos nevének is egy tárolót
GetPlayerName(playerid,jatekosnev,sizeof(jatekosnev)); //lekérdezzük a játékos nevét
format(string,sizeof(string),PATH,jatekosnev); //megformáljuk az .ini fájl nevét
return string;
}

 
Most megnézzük, ha a játékos csatlakozik, regisztrálva van-e vagy most kell neki.
 

public OnPlayerConnect(playerid)
{
    if(fexist(Jatekosadatok(playerid)))//\"fexist\" funkciót használjuk a fájl keresésére, hogy regisztrálva van e már a játékos aki csatlakozott.
    {
        INI_ParseFile(Jatekosadatok(playerid), \"Adattoltes_%s\", .bExtra = true, .extra = playerid);
        ShowPlayerDialog(playerid, DIALOG_BELEP, DIALOG_STYLE_INPUT,\"Bejelentkezés\",\"Írd be a jelszód a belépéshez\",\"Belép\",\"Bezár\");
    }
    else//ha nincs regisztrálva
    {
        ShowPlayerDialog(playerid, DIALOG_REG, DIALOG_STYLE_INPUT,\"Regisztráció folyamatban\",\"Írj be egy jelszót a regisztrációhoz!\",\"Regisztrálás\",\"Bezár\");
    }
    return 1;
}

 
Kialakítjuk a dialogokat:
 

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    switch( dialogid )
    {
        case DIALOG_REG:
        {
            if (!response) return Kick(playerid);
            if(response)
            {
                if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REG, DIALOG_STYLE_INPUT, \"Regisztráció folyamatban\",\"Helytelen jelszót írtál be.\\nÍrj be egy jelszót a regisztrációhoz\",\"Regisztrálás\",\"Bezár\");
                new INI:File = INI_Open(Jatekosadatok(playerid));//megnyitjuk a játékos fájlját.
                INI_SetTag(File,\"data\");//fájl elõtagát állíthatjuk be
                INI_WriteInt(File,\"Password\",udb_hash(inputtext)); //jelszót elmentjük
                INI_WriteInt(File,\"Cash\",0); //Pénz beállítás
                INI_WriteInt(File,\"Kills\",0); //Ölések száma
                INI_WriteInt(File,\"Deaths\",0);//Halálozások száma
        INI_WriteInt(File,\"Score\",0);//Pont száma
                INI_Close(File);
                Jatekosinfo[playerid][pCash]=10000; //Megadjuk a kezdõpénzt
            }
        }
        case DIALOG_BELEP:
        {
            if ( !response ) return Kick ( playerid );
            if( response )
            {
                if(udb_hash(inputtext) == Jatekosinfo[playerid][pPass])//Ha a beírt jelszó egyezik a fájlban tároltéval.
                {
                    INI_ParseFile(Jatekosadatok(playerid), \"Adattoltes_%s\", .bExtra = true, .extra = playerid); //betöltjük a játékos adatait a fájlból.
                }
                else //ha nem egyezik a jelszó
                {
                    ShowPlayerDialog(playerid, DIALOG_BELEP, DIALOG_STYLE_INPUT,\"Bejelentkezés\",\"Helytelen jelszó.\\nÍrd be a jelszód a belépéshez.\",\"Belép\",\"Bezár\");
                }
                return 1;
            }
        }
    }
    return 1;
}

 
Most mentsük el az adatokat, ha a játékos kilép:
 

public OnPlayerDisconnect(playerid, reason)
{
    new INI:File = INI_Open(Jatekosadatok(playerid));
    INI_SetTag(File,\"data\");
    INI_WriteInt(File,\"Cash\",Jatekosinfo[playerid][pCash]);
    INI_WriteInt(File,\"Kills\",Jatekosinfo[playerid][pKills]);
    INI_WriteInt(File,\"Deaths\",Jatekosinfo[playerid][pDeaths]);
    INI_WriteInt(File,\"Score\",Jatekosinfo[playerid][pScore]);
    INI_Close(File);
    return 1;
}

 
Írjuk meg, hogy ha meghal a játékos vagy megöl valakit, akkor növelje a statisztikát
 

public OnPlayerDeath(playerid, killerid, reason)
{
    Jatekosinfo[killerid][pKills]++; //Ölések számát megnöveljük 1el
    Jatekosinfo[playerid][pDeaths]++;//Halálozások számát megnöveljük 1el
    return 1;
}

 
Pénz használata:
 

new Text:penzem; //Textdraw a pénznek

 
OnPlayerConnect-hez írjuk be a textdrawra vonatkozó funkciókat:
 

        penzem = TextDrawCreate(500,140,\"Cash: 0\");
TextDrawFont(penzem,3);
TextDrawLetterSize(penzem,0.2,1.9);
TextDrawColor(penzem,0x00FF00FF);
TextDrawSetOutline(penzem,true);
TextDrawSetProportional(penzem,true);
TextDrawSetShadow(penzem,1);

 
OnPlayerDisconnect-hez:
 

TextDrawDestroy(penzem);

 
Regisztráció és Belépés után adjuk hozzá a következõ módon:
 

SetTimerEx(\"cashupdate\",3500,true,\"i\",playerid); //elindítunk egy timert a pénz frissítésére 3,5mp-enként
TextDrawShowForPlayer(playerid, penzem); //megjelnítjük a textdrawot

 
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    switch( dialogid )
    {
        case DIALOG_REG:
        {
            if (!response) return Kick(playerid);
            if(response)
            {
                if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REG, DIALOG_STYLE_INPUT, \"Regisztráció folyamatban\",\"Helytelen jelszót írtál be.\\nÍrj be egy jelszót a regisztrációhoz\",\"Regisztrálás\",\"Bezár\");
                new INI:File = INI_Open(Jatekosadatok(playerid));//megnyitjuk a játékos fájlját.
                INI_SetTag(File,\"data\");//fájl elõtagát állíthatjuk be
                INI_WriteInt(File,\"Password\",udb_hash(inputtext)); //jelszót elmentjük
                INI_WriteInt(File,\"Cash\",0); //Pénzünk
                INI_WriteInt(File,\"Kills\",0); //Ölések száma
                INI_WriteInt(File,\"Deaths\",0);//Halálozások száma
           INI_WriteInt(File,\"Score\",0);//Pont száma
                INI_Close(File);
      Jatekosinfo[playerid][pCash]=10000;//kezdõpénzt adunk
                SetTimerEx(\"cashupdate\",3500,true,\"i\",playerid); //elindítunk egy timert a pénz frissítésére 3,5mp-enként
      TextDrawShowForPlayer(playerid, penzem); //megjelnítjük a textdrawot
            }
        }
        case DIALOG_BELEP:
        {
            if ( !response ) return Kick ( playerid );
            if( response )
            {
                if(udb_hash(inputtext) == Jatekosinfo[playerid][pPass])//Ha a beírt jelszó egyezik a fájlban tároltéval.
                {
                    INI_ParseFile(Jatekosadatok(playerid), \"Adattoltes_%s\", .bExtra = true, .extra = playerid); //betöltjük a játékos adatait a fájlból.
                    SetTimerEx(\"cashupdate\",3500,true,\"i\",playerid); //elindítunk egy timert a pénz frissítésére 3,5mp-enként
         TextDrawShowForPlayer(playerid, penzem); //megjelnítjük a textdrawot
      }
                else //ha nem egyezik a jelszó
                {
                    ShowPlayerDialog(playerid, DIALOG_BELEP, DIALOG_STYLE_INPUT,\"Bejelentkezés\",\"Helytelen jelszó.\\nÍrd be a jelszód a belépéshez.\",\"Belép\",\"Bezár\");
                }
                return 1;
            }
        }
    }
    return 1;
}

 
//Pénzfrissítõ funkció
 
forward cashupdate(playerid);
public cashupdate(playerid)
{
new penzstring[40];//tároló a pénz kiírására
new enpenzem = Jatekosinfo[playerid][pCash];//változó a pénzünknek
format(penzstring,sizeof(penzstring),\"Cash: %d\",enpenzem); //megformázzuk a szöveget
TextDrawSetString(penzem,penzstring);
return 1;
}

 
Most pedig egy alap parancs, hogy megnézzük, hogy tudjuk kezelni a pénzünket.
 

CMD:fegyvert(playerid,params[])
{
new ammoam;//töltény változó
new gunid;//fegyver id-nek változó
if(sscanf(params,\"ii\",gunid,ammoam)) return SendClientMessage(playerid,0xAA3333AA,\"Használat: /fegyvert <fegyverid> <töltény>\");//ellenõrizzük, hogy jól írta be a parancsot
if((ammoam*35) > Jatekosinfo[playerid][pCash]) return SendClientMessage(playerid,0xAA3333AA,\"Nincs elég pénzed!\"); //ellenõrizzük van-e elég pénze (töltény 35Pénzbe kerül darabja)
GivePlayerWeapon(playerid,gunid,ammoam);//fegyvert adunk a játékosnak
Jatekosinfo[playerid][pCash]=Jatekosinfo[playerid][pCash]-(ammoam*35);//levonjuk a töltények árát
return 1;
}

 
Letöltés teljesbe: http://www.solidfiles.com/d/e979b7b1dd/

75
Készülõ munkák / [GM]Team Tournament
« Dátum: 2012. Április 05. - 12:01:02 »
nem szükséges az bele, mert semmi értelme a másik kezdõ telepén tartózkodni

Oldalak: 1 ... 3 4 [5] 6 7 ... 9
SimplePortal 2.3.7 © 2008-2024, SimplePortal