Ü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 - Kurtis

Oldalak: 1 [2] 3 4
16
SA-MP: Szerverfejlesztés / CoolAndreas
« Dátum: 2012. Július 06. - 00:22:22 »
Gondolom valamennyien ismeritek vagy hallottatok errõl a módról, és gondolom páran várták ezt a pillanatot. Aki errõl a nevérõl nem ismerné, elõzõ nevei: caligula4life, lv_4life, lsv_4life. Még talán ~2007-2008 között mûködött ez a mód a 0.2-es SA-MP verzió idejében. Akik jártak régen a GTA-MP Mods vagy SA-MP Mods szerverre, azok ismerhetik valamennyire a módom.
Elõször is, nem teljesen saját, hanem a Las Venturas DM+MG+LG+PB GDM módot használja úgynevezett \"motorként\" a mód. Körülbelül a jelenlegi CoolAndreas már 0.3 alá lett félig-meddig megírva, 90%-ban stabil és bugmentes, viszont hosszútávon nem volt futtatva a mód, szóval 100%-os stabilitást nem tudok garantálni.
Mód története:
Körülbelül 2007 vége fele kezdhettem bele a módba, de nem az én ötletem volt elsõsorban a mód létrejötte, hanem egy régi barátom Dragon ötlete volt, mert nem tetszett neki, hogy feltöltöttem az oldalamra a HKG klán (régi klánom) módjait, például volt a Desert Reaper 2.0 utána azt hiszem a Ganton 4 Life, de úgy töltöttem fel természetesen, hogy kivettem belõle minden klánnal kapcsolatos dolgot, de valamiért nem tetszett neki így sem. Lényeg, hogy a Ganton 4 Life feltöltése után adta az ötletet és az \"alapmotort\", és szigorúan megtiltotta, hogy kiadjam publikusan a módot. Ennek eleget is tettem. Elvoltam a móddal egy ideig, akkor kapta az elsõ nevét a Caligula 4 Life-t, ami késõbb nem tetszett Dragonnak, ezért késõbb, kisebb újításokkal át lett nevezve LV 4 Life módra, körülbelül ekkortájt szûnt meg a HKG klán, és volt közben egy teamem. Szóval kivettem belõle minden HKG-s dolgot és úgy üzemelt a mód, mint a SA-MP Mods Modder Team módja. Lett sok dolog berakva, mindenkinek voltak jármûvei, stb. Késõbb egy \"barátunk\" felajánlott egy ingyen szerver hostot, amit õ üzemeltet nekünk, bele is mentünk. És ekkor jött a baj néhány hét elteltével, mikor valaki szólt, hogy az AMX fájlt kikerült a netre. Nem sok idõ kellett kideríteni, hogy a \"barátunk\" olyan okos volt, hogy kirakta a módomat, fõleg engedélyem nélkül csinálta ezt. Szóltam neki, hogy vegye le, valamennyi idõ elteltével törölte a letöltést, de nem rögtön. Ekkor szivárgott ki egy kisebb része a módnak sajnos, ez megtalálható, szerencsére csak amx formátumban, e miatt gyorsan fejlesztenem kellett a módon, így új nevet is kapott LSV 4 Life (Los San Vegas). Késõbb \"barátunk\" ellenségünké vált, otthagytuk. Végül továbbfejlesztettem a módot, és ezzel létrejött a mód végleges neve a CoolAndreas. Ezt egy másik \"barátom\" üzemeltette, igaz nem volt túl megbízható már akkor sem. Legnagyobb hibát akkor követtem el mikor pwn-ekkel együtt odaadtam neki az EGÉSZ szerver mappámat. És hogy került ki a CoolAndreas forrása? Hát úgy hogy az akkori GTA-MP Mods oldalamon zûrzavart okozott a \"barátom\" és a barátai. És én olyan döntést tettem, ami felõlem helyesnek tûnt. És ezzel el is dõlt a CoolAndreas sorsa. Amikor kikerült a forrása, sokan csalónak, hazudozónak neveztek. Szóval nagyobb zûrzavart okoztak ezzel, mint az elõzõ tevékenységükkel, de valahogy sikerült túltennem magam rajta, közben magyarázkodhattam, nagyjából sikerült megtartanom jó híremet, de gondolom még vannak páran akik kételkednek scripelési tudásomban (nem feltétlen fórum tagokra gondolok). És végül kitettem a módom. Gondolom ilyen sok küzdelem után nem értitek miért tettem meg. Egyszerû, mivel Dragont szerintem egyáltalán nem érdekli, fõleg hogy nem sa-mpzik, én meg nem látom értelmét a forrás megvédésének. Fõleg, hogy szerverem nincsen, ami hostos.
Módról:
Viszonylag érezhetõ, hogy átalakítottam 1-2 dolgot az eredeti módból, fõleg ki vettem belõle sok feleslegesnek ítélt dolgot.
Regisztrációs rendszeren alapszik (felhasználónév és jelszó).
Birtokok: checkpoint helyett a térképen egy zöld házikon található és egy zöld ház pickup hátranézéssel vehetõ meg az épület
DM Zónák: külön világba teleportál (csak az lát, aki abban a DM zónában van), újjáéledés a DM zónában amíg ki nem lépsz
Teleportok: sokféle, az alap /tele-lv és a többi megtalálható, egy-két érdekes helynek a teleportja és bázisugrás teleportok
Lõtér: nem kell remélem részletezni, nem messzi található a sivatagban a sztriptízbár és a benzinkút közelében
Titkos csomagok: ha jól emlékszem 10 van elrejtve, ha megtalálod mindet 100 pajzzsal fogsz újjáéledni (regisztrációs rendszer nem menti ezt)
Fegyver/Pénzadás: Kicsit módosítottam, fegyvert nem lehet lõszerszám szerint átadni, csak egészben, viszont közel kell legyél a játékoshoz, hogy tudj neki adni fegyvert/pénzt.
Admin felület: szórakoztatás, és kisebb-nagyobb hibaelhárítás (kocsik, pickupok, objectek újra betöltése)
És még egy-két dolgot tartalmaz, de szerintem nem kell azokat bemutatnom.
Helpben (/help) található információk igazához a következõ scripteket érdemes betölteni:
con_msg actions safe extra3 o_placer debug objecthold vehnam teleport ls_elevator
Weboldalamon megtalálhatóak a leírt scriptek.
Készítõk:
LV DM+MG+LG+PB GDM - Jax, Sintax, Betamaster
Magyaritotta: DenyM
Egy két kisebb pályaelem, jármû Dragon.
És természetesen a CoolAndreas részét én írtam (Kurtis).
Sokan gondolom nem értik, hogy miért tettem végül ki. Röviden: nincs már senki akinek számítana a mód sorsa, engem meg már nem nagyon érdekel a megvédése..
A mód újra lefordításához mellékelve vannak a szükséges includek.
Letöltés ITT

17
Modok / [OTHER]GTA Override
« Dátum: 2012. Június 16. - 00:13:32 »
Gondolom nem én vagyok az egyetlen aki már unja az állandó biztonsági másolat készítést a GTA3.IMG fájlról. Ennek most vége. Mivel ezzel a programmal felülbíráljuk a GTA3.IMG fájlt, úgy, hogy egy külön mappába lesz egy IMG fájlunk amibe majd lehet rakni a GTA3.IMG fájlba való módokat. Tehát nem kell többé módosítanod a GTA3.IMG fájlt, ha új módot akarsz felrakni, egyszerûen belerakod a overrd.img fájlba, és nem kell majdnem 1GB-os méretû biztonsági másolatokat készítenünk innentõl. Szóval a GTA3.IMG-t sértetlenül meghagyjuk eredetinek, és csak az új IMG fájlba kell pakolni a módot, ha kitöröljük a módolt fájlt az IMG-bõl természetesen helyébe fog lépni a GTA3.IMG-bõl való.
Érdekes, hogy ez eddig senkinek nem jutott eszébe, de remélem, hogy sok embernek hasznára fog válni.
Ha valaki így se értené nagyon röviden:
GTA3.IMG-t nem kell többé módosítanod, helyette egy új IMG fájlba kell majd rakni a módolt fájlokat, a readme.txt-ben errõl olvashatsz bõvebben.
Egy patchert kell lefuttatnod, ami természetesen csinál egy biztonsági mentést a játék exe-jérõl, ha netán el akarnád távolítani a módot, bõvebb információ a readme.txt-ben!
Letöltés ITT

18
Pluginok és Programok / SA-MP Ultimate Position Saver
« Dátum: 2012. Május 21. - 16:11:25 »
Lehet kicsit túlzás a neve, de röviden azért készítettem, mert már zavart SA-MP-ben a /save vagy /rs beírogatása, kimeneti fájl utólagos formázgatása meg ilyenek, ezért megalkottam ezt a programot, amivel kényelmesebben le lehet menteni a pozíciókat, úgy ahogy neked jól esik, olyan formázással amilyet te akarsz. Adatok: X,Y,Z,Angle,Radius, ami a legjobb, hogy lehet írni neki elejét és végét. Viszont nem kiírással jelzi a mentést, hanem egy hangot ad ki, ha rácsatlakoztál a programmal a San Andreas-ra. Sajnos manuálisan kell rácsatlakozni a játékra (futás közben alt-tab), de lehet így lesz a legjobb.
E miatt is jó, mert e helyett (/save):
AddPlayerClass(0,x,y,z,ang,w1,w1a,...);
Lehet ilyet is:
SetPlayerCheckpoint(playerid,x,y,z,rad);
Vagy akár tömbhöz:
{x,y,z},
2 fájl-al dolgozik a program:
Konfigurációs fájl: samp_upsav.ini (ha törlöd újat generál legközelebb)
Kimeneti fájl: samp_upsavedpos.txt
Letöltés itt (forráskóddal)

19
SA-MP: Szerverfejlesztés / Call of Duty 2 Maps Mod
« Dátum: 2012. Május 19. - 17:16:20 »
Egyenlõre csak úgy lehet ha a módba beleszerkesztesz, pl:
Ezt a részt
 
//Work In Progress...
public OnGameModeInit()
{
SetGameModeText(\"COD2 Mod\");
ShowPlayerMarkers(0);
ShowNameTags(0);
LoadMap(\"mp_toujane\");
AddPlayerClass(287,419.3375,-2478.2483,15.8563,0.0,0,0,0,0,0,0);
return 1;
}

 
Átírod erre (vagy mp_dawnville):
 
//Work In Progress...
public OnGameModeInit()
{
SetGameModeText(\"COD2 Mod\");
ShowPlayerMarkers(0);
ShowNameTags(0);
LoadMap(\"mp_carentan\");
AddPlayerClass(287,419.3375,-2478.2483,15.8563,0.0,0,0,0,0,0,0);
return 1;
}

 
Szerk.:
Mostmár nem feltétlen szükséges átírni azt az 1 sort, hanem játék közben megszavazható másik pálya, 1 játékos esetén 1 pillanat alatt átválthatsz a másik pályára.

20
Pluginok és Programok / SA-MP Server Configuration Generator
« Dátum: 2012. Május 19. - 16:32:00 »
A logtime nekem tökéletesen mûködik, nem tudom hogy mi lehet a gond, kipróbáltam, hogy beírom, nekem tökéletesen betöltötte, 0 hibával. Közben hozzáadtam gyorsba a repeat, más néven azt a számot ami a módismétlést jelzi több mód esetén. Ha tudsz kódban mellékelni egy olyan cfg-t amiben hibásan adja be az adatot lehet tudok valamit kezdeni vele, de nem biztos.
A háttérdolgozó (background worker) hibáját kijavítottam szintúgy.

21
Modok / [MAP]GTA Wild Life 4.0 (Végleges)
« Dátum: 2012. Május 19. - 14:12:29 »
A csapat:
Kurtis - 3D modellezés, programozás, térképkezelés
Sleepy93HUN - 3D modellezés
Zoli - 3D modellezés (1.0-ig dolgozott velünk azután eltûnt valahova)
Tesztelõk:
ASGPatrick
ASGArmand
Tomi
Mód létrejötte
A mód 2011 március környékén kezdõdött el, jó sokáig nem volt kiadva az elsõ verzió, mivel még alig volt benne valami, elsõsorban a táj volt csak, késõbb jöttek a házak, fák, és a bokrok, meg még 1-2 kisebb dolog. A multival is próbálkoztam közben, legelõször GTA Rumble-t használtam, késõbb MTA-t állítottam hozzá a módhoz, ekkor még nem volt expp mappa. Egy barátom helyigény hiánya miatt kezdtem el ezt a különleges rendszert bevezetni, aztán megírtam a San Andreas Changert, hasznosnak tûnt, csak lassan váltotta át a játékot. Késõbb rájöttem hogyan lehet megoldani a 2 exe használatot MTA-ban, ekkor jött létre az MTA launcher, és a patcher. Ez már a 2.0-s verzió volt. Késõbb elkezdtem foglalkozni a 2.5-nél a fagenerálással, a 2.5 augusztus vége felé már majdnem végleges változatában volt megírva. Ekkor jöttek a kisebb laggok, mivel kb. 1 fa 16 ezer poly volt, és egy 4gb-os gép kb 4 millió polyt tud felkezelni egyszerre elméletileg (kb 200-250 fa volt lerakva, amibõl kb 50 minimum be volt töltve). Az utolsó 2 verzió már az utolsó simítások voltak, kisebb easter eggek, forgalom létrehozása, stb. Miután a 4.0-hoz érkeztem, kissé sietõsre fogtam a tempót, mondjuk úgy hogy összecsapott lett a romváros enyhén szólva, de szerintem élvezhetõre sikeredett. Nemsokkal a 4.0 után kifejlesztettem hozzá egy SA-MP-t 0.2X-es launcher, 0.3a-s dll (fegyverek miatt) és kisebb módosítgatásokkal megcsináltam a wild lifehoz a multiplayert. A \"kampány\" (küldetés csomag) DYOM-el lett megírva, utólag se bánom, mivel a SA SCM-e kicsit túl nehéz lett volna nekem, és sok idõt vett volna el.
A mód semmilyen eredeti fájlodat nem fogja felül írni, jár mellé egy MTA patcher és egy különálló SA-MP, a launcherben meg könnyedén elindíthatunk mindent (ha nem mûködne valami jól, akkor kénytelenek vagyunk megnyitni magát a fájlt)
Módról röviden
8 sziget van a játékban:
- 2 Erdõs
- Havas
- Város
- Sivatag
- Romváros
- Dzsungel
- Rejtett
2 db bázis van a játékban:
- A kezdõ szigeten (erdõ)
- Város szigeten
Fegyverek (amik eltérnek a SA-tól):

!Ha ugyanaz a neve egy fegyvernek, mint a SA-ban, az le lett cserélve!

Közelharci:
- Faág
- Láncfûrész
Pisztoly:
- Beretta
- Desert Eagle
- Silenced UZI
Sörétesek:
- Winchester
- Sawn-off
- SPAS 12
Géppisztolyok:
- Ppsh
- Thompson
- MP5 (régebbiekben MP40)
Géppuskák:
- AMD-65 (régebbiekben Stg44)
- AK-47
Nehézfegyverzet:
- MG-42
Puskák:
- Puska
- Dragunov-SVD
Speciális:
- Távcsõ (4.0 elõttieknél fényképezõgép)
!Minden fegyvernek van egy típusikonja, alatta a neve található!
Küldetések:
Ha a küldetés exe-t indítod el új játék indításakor a következõ epizódok érhetõek el:
Prológus - Katonaságon kiképzés, a bázist megtámadják a 2. részben, el kell szökni végleg a városból.
1. Epizód - Lezuhant gép utáni történet, 2 katonai csoport szövetségének megoldása és menekülés.
2. Epizód - Folyamatos menekülés a vörös katonacsoport elõl, késõbb ellentámadás a kék katonacsoport segítségével, ezzel béke uralkodik a Wild Life-n, egyenlõre.
Bónusz Epizód - Aki ismeri a Wolfenstein 3D-t annak szerintem nem sok újat fog ez jelenteni, 1. és 9. pálya.
A karaktered nem CJ (2.5-tõl), lásd a 2.5-ös trailerben.
A mód külön mappát használ, nem ír felül semmi fontos fájlt, 4.0-s verzió telepítése erõsen ajánlott, így a CLEO nem akad össze a másik CLEO-val. Ha van DYOM-od, nem akadnak össze, mivel módosított DYOM-ot használ a mód.
Videó:
IRDu8L8ht_Q
 

Letöltés:
Verzió 4.0
4.0-hoz tartozó javítás
SA-MP Port (teljessen különálló fileokkal dolgozik, kivéve a 2png-t, nyugodtan felrakható a másik mellé):
Kliens
Szerver
Arhívum (kevésbé ajánlott):
Verzió 3.0
3.0-hoz tartozó javítás
Verzió 2.5
2.5-höz tartozó javítás
Verzió 2.0
Verzió 1.0

22
Pluginok és Programok / SA-MP Server Configuration Generator
« Dátum: 2012. Május 19. - 13:16:14 »
1-2 éve körülbelül, azt a hibát meg most már tényleg ki javítom, gondolom senki se vette észre azt a nagyon minimális memória szivárgást (csak halmozza fel a memóriahasználatot a program, ebben az esetben max 10-100kb körüli ha új dialógust tölt be, ha nem 48 órán át fut a program akkor semmi gond nincs belõle)

23
Pluginok és Programok / SA-MP Server Configuration Generator
« Dátum: 2012. Május 18. - 22:25:13 »
Tudom, hogy sok ilyen létezik már, láttam már az angol fórumon is, de ha jól tudom ilyen intelligens változata még nincsen, meg amúgy is hasznos volt számomra a megírása, mivel pár új dolgot tanultam programozásban. Majdnem teljesen hasonlít a többire, de sokkal felhasználó barátabb, 2 nyelvû, leggyakoribb beállítási lehetõségeket tartalmazza. A legjobb része, hogy ha jó helyre van telepítve, akkor a gamemode, filterscript és a plugin esetében a program leellenõrzi a lehetséges betölthetõ fájlokat. Ami még extra, hogy képes visszaolvasni egy kézzel írt, vagy általa generált server.cfg-t. Remélem, hogy azért valakinek hasznára lesz a program.
Generáló hiba javítva!
Betöltés/Mentés gomb hiba javítva (mûködésképtelen míg a háttérdolgozó fut)
Repeat (mód ismétlésszám) hozzáadva a programhoz
Timestamp paraméter hozzáadva
Letöltés ITT

24
Modok / [OTHER]Ladder Mod
« Dátum: 2012. Május 18. - 22:08:57 »
Nevébõl szerintem egyértelmûen kitalálható, hogy a mód létrákkal foglalkozik. Mondjuk úgy hogy unatkoztam, és elhatároztam magam ennek a módnak megírására. A legjobb benne szerintem az, hogy az alap létrákon kívül újakat is létre lehet hozni, ebben segítségünkre lesz a programban található szöveg, ami leírja, hogy készítéskor hanyadik hang mit csinál, sajnos kézzel csak a koordinátákat lehet módosítani, a forgástengelyt nem tudtam fokba átkonvertálni, így nem lehet átírni. Elvileg minden létrát használhatóvá tettem, de maradhatott ki. SF reptérnél levõ 7-8 létrát használhatóvá tettem.
Ami a módból hiányzik az az animáció, sajnos memóriacímekkel nem sokra megyek, valószínû CLEO vagy hasonló api hook-ot kellene kezelnem.
Alapgombok:
Használat mód
F gomb - létra használata (újbóli megnyomásával leugrasz róla, nem ajánlott)
W, S - létrán fel-le mászkálás
Szerkesztõ mód
L gomb - létra készítés megkezdése
F gomb - adott lépésnél a következõ lépésre ugrik
W, S - létra magasság készítésénél használható
W,S,A,D - létra kilépõ pozíció készítésénél használható
Fontos: sose akarj létrát kreálni vízben, ha használja valaki úgy a létrát, akkor meg fog halni, valószínû a Z gyorsulás memóriacím tehet róla.
Videó a módról:
NS-zfk_Ylag
Készítõ: Kurtis
Letötlés ITT

25
SA-MP: Szerverfejlesztés / Call of Duty 2 Maps Mod
« Dátum: 2012. Május 18. - 21:02:55 »
Mint a címbõl is kitalálható, a COD2-nek a többjátékos pályáit tartalmazza, viszont nem az eredeti San Andreas objectjeibõl lett létrehozva, hanem egyedi modellekkel lett ez a mód megvalósítva, a mód jelenleg béta, de játékra alkalmas, 3 map-ot tartalmaz, azok közül az mp_toujane map optimizált, a másik kettõ még munkára vár (DXT3-as tömörítésû minden textúra, ez nagyon levesz egyes gépek teljesítményébõl és elõidézi az úgynevezett lag spike-t). A módot próbáltam valamennyire COD2 szerûre megírni, valamennyire a fegyverválasztás hasonlít a COD2-re. A maradék két pályát be lehet tölteni, aki akarja, de nem optimizáltam még játékra, így csak saját felelõsségetekre használjátok játékra.
A határok csak a toujane-ra lettek még kidolgozva, ez annyit jelent, hogy a másik két pályáról ki lehet ugrani vagy sétálni.
Poligónok száma pályánként átlagosan: 60-100 ezer (teljesítmény végett fontos lehet)
Pályák konvertálási ideje kb. 10 perc (optimizálatlanul)
Mód sorainak száma: 633
Problémás lehet a mód üzemeltetése az egyedi objectek miatt, e miatt van a letöltésben 2 db mappa (Client, Server)
Client: csak az egyedi objecteket tartalmazza, mert nélkülük vízbe esel
Server: a módot tartalmazza, ha kliens szerepét is betölti egyértelmûen szükség lesz az egyedi objectekre is
További útmutatás a telepítéshez a letöltött fájl readme.txt-jében.
Update:
Mind a 3 pálya használható mostantól, minden pálya rendelkezik határral és optimizálva vannak a textúráik, carentan még kisebb \"csúnyaságokkal\" rendelkezik. A mód frissítve lett, egy súlyos hiba javítva benne, F4-es újraéledésnél a fegyvermenü nem akarta újraspawnolni a játékost.
Újdonság még: Pályaszavazás, ha sikeres, nem indul újra a mód, hanem gyorsan lecseréli a mapot, lenullázza a pontokat és újraspawnoltat mindenkit.
Jelenlegi mapok (5):
mp_toujane
mp_carentan
mp_dawnville
mp_burgundy
mp_railyard
Parancsok:
/help - parancsok listája
/kill - öngyilkosság (sose tudni mikor jöhet jól)
/req - új fegyver kérése (halál után megkapod)
/votemap - elõjön egy pályaszavazó dialógus
/yes | /no - szavazás a pályára igennel/nemmel
Videó a módról:
jsZSZ-2PLDk
Régebbi videó:
aFHMFFYf-JU
Aki tudja frissítse erre a kódra a módot (5 mapos, jelenlegi változat)
 
#include <a_samp>
main()
{
print(
\"======================================\\n\"\\
\"    COD2 Maps Mod By Kurtis (2012)\\n\"\\
\"======================================\"
);
}
#define WEAPON_DIALOG 0
#define MAP_DIALOG 1
//If detail object id changes
#define COD2_BUSH 19830
new pvotey[MAX_PLAYERS];
new pvoten[MAX_PLAYERS];
new vip = 0;
new tmpmapname[32];
new mapname[32];
new playergun[MAX_PLAYERS] = -1;
new map_list[] = \"1\\tmp_toujane\\n2\\tmp_carentan\\n3\\tmp_dawnville\\n4\\tmp_burgundy\\n5\\tmp_railyard\";
new wd_list[] = \"1\\tAK47\\n2\\tM4\\n3\\tShotgun\\n4\\tS.P.A.S. 12\\n5\\tMP5\\n6\\tRifle\\n7\\tSniper\";
new maplist[5][32] = {
\"mp_toujane\",
\"mp_carentan\",
\"mp_dawnville\",
\"mp_burgundy\",
\"mp_railyard\"
};
new Float:RndToujane[13][4] = {
{464.0382,-2514.1758,7.3833,2.7548},
{439.1965,-2515.0486,12.7779,312.2425},
{421.1057,-2491.7861,8.7073,350.9930},
{405.3162,-2474.6873,9.1468,23.2654},
{424.4315,-2441.9197,9.6922,203.9326},
{456.3579,-2434.1055,9.7132,178.0092},
{486.4589,-2461.9839,7.2301,210.9353},
{474.0056,-2476.6055,7.6380,156.3472},
{441.0925,-2460.2100,9.5645,204.9119},
{446.9927,-2486.0085,12.2098,289.4292},
{477.6961,-2492.7449,12.0869,0.0970},
{469.3441,-2450.9187,13.4558,313.2219},
{463.7364,-2486.0076,7.2971,258.9754}
};
new Float:RndCarentan[17][4] = {
{331.3725,-2463.6299,9.6208,269.5319},
{370.8719,-2437.4585,9.6920,279.4752},
{372.4786,-2461.2476,9.8293,157.6709},
{372.4634,-2477.4089,9.4668,301.4062},
{394.3777,-2471.4890,13.3087,120.2978},
{399.5544,-2483.5867,9.3057,148.7930},
{449.2260,-2491.3523,8.9236,16.4213},
{421.5973,-2463.6536,8.6084,23.1685},
{411.5158,-2471.4270,9.6290,2.9270},
{411.6346,-2469.2800,13.4899,348.0982},
{412.6811,-2441.7800,12.8984,135.4707},
{412.5037,-2431.6458,12.8311,203.9217},
{411.1250,-2440.7581,9.0221,290.5697},
{406.6093,-2426.4636,8.6785,156.4225},
{409.4190,-2447.5457,9.0587,96.0530},
{376.9003,-2434.2307,9.3468,251.2381},
{362.4734,-2474.5691,9.2456,279.5611}
};
new Float:RndDawnville[15][4] = {
{480.9118,-2442.5410,14.0089,80.2558},
{456.9687,-2429.9517,15.0307,178.2674},
{438.4753,-2459.8762,14.6268,321.0234},
{443.9326,-2481.3066,12.5548,338.3379},
{441.4456,-2502.3682,12.2123,92.7548},
{414.7196,-2489.0701,13.9493,160.6946},
{397.0762,-2502.5093,12.5085,265.5664},
{415.2849,-2522.6917,12.3358,0.1829},
{383.6168,-2525.8508,11.6088,48.4785},
{377.4300,-2505.8809,11.4397,42.4416},
{356.1486,-2495.6890,11.4399,306.1920},
{371.3441,-2472.4878,12.8897,252.3142},
{383.6357,-2457.2507,15.6290,274.3312},
{402.0826,-2432.3560,14.6805,268.2513},
{414.9482,-2466.1973,14.3644,8.1944}
};
new Float:RndBurgundy[12][4] = {
{370.9223,-2471.6335,12.2395,331.5641},
{392.0306,-2489.3645,13.1905,278.4099},
{400.0284,-2473.9829,12.6297,207.3871},
{420.7856,-2483.7747,12.3016,6.8334},
{415.0567,-2441.2905,12.1992,85.5827},
{397.3856,-2448.7375,12.2476,178.2675},
{426.1143,-2422.3540,12.4032,278.7219},
{419.2222,-2439.0515,12.4075,179.6880},
{429.1496,-2446.6245,12.4770,175.7818},
{451.0567,-2446.2837,12.1678,89.7580},
{461.4712,-2462.0259,12.1316,187.5705},
{434.4026,-2488.3638,12.2063,276.4622}
};
new Float:RndRailyard[14][4] = {
{347.0537,-2496.8896,8.2547,341.8892},
{339.0773,-2451.0918,10.4344,270.7693},
{326.5202,-2437.4736,9.7799,267.9284},
{342.2571,-2421.9387,8.5707,269.5051},
{375.3299,-2406.7124,8.3437,210.5560},
{393.5036,-2418.7754,8.2469,137.2464},
{405.0043,-2429.8384,8.2469,340.6839},
{428.0715,-2415.8176,8.2469,162.8146},
{454.4234,-2419.8809,6.4522,181.2806},
{449.6583,-2478.6968,8.2605,124.1071},
{436.1698,-2506.0925,8.2547,111.4791},
{400.0956,-2472.7327,11.3140,168.0983},
{435.4421,-2458.9587,8.2469,332.2312},
{392.5327,-2447.7178,9.1454,116.2086}
};
public OnGameModeInit()
{
SetGameModeText(\"COD2 Mod\");
ShowPlayerMarkers(0);
ShowNameTags(0);
LoadMap(\"mp_toujane\");
AllowInteriorWeapons(1);
UsePlayerPedAnims();
AddPlayerClass(287,419.3375,-2478.2483,15.8563,0.0,0,0,0,0,0,0);
return 1;
}
//Maps
stock LoadMap(name[32])
{
new tmp[48];
mapname = name;
format(tmp,48,\"mapname %s\",name);
SendRconCommand(tmp);
//Clear Objects
for(new i = 0; i < MAX_OBJECTS; i++)
{
if(!IsValidObject(i)) continue;
DestroyObject(i);
}
if(!strcmp(name,\"mp_toujane\"))
{
CreateObject(19808,419.3375,-2478.2483,12.8563,0,0,0,300.0);
CreateObject(19809,419.3375,-2478.2483,12.8563,0,0,0,300.0);
//Bounds
CreateObject(19810,419.3375,-2478.2483,12.8563,0,0,0,300.0);
}
else if(!strcmp(name,\"mp_carentan\"))
{
CreateObject(19811,419.3375,-2478.2483,12.8563,0,0,0,300.0);
CreateObject(19812,419.3375,-2478.2483,12.8563,0,0,0,300.0);
CreateObject(19813,419.3375,-2478.2483,12.8563,0,0,0,300.0);
CreateObject(19814,419.3375,-2478.2483,12.8563,0,0,0,300.0);
CreateObject(19815,419.3375,-2478.2483,12.8563,0,0,0,300.0);
//Bounds
CreateObject(19816,419.3375,-2478.2483,12.8563,0,0,0,300.0);
//Details
CreateObject(COD2_BUSH, 329.84, -2479.87, 8.06,   0.00, 0.00, 158.07);
CreateObject(COD2_BUSH, 315.79, -2465.83, 6.99,   0.00, 12.00, 116.89);
CreateObject(COD2_BUSH, 324.27, -2475.60, 8.06,   0.00, 0.00, 133.12);
CreateObject(COD2_BUSH, 309.11, -2433.19, 6.78,   0.00, 0.00, 86.52);
CreateObject(COD2_BUSH, 319.82, -2470.76, 8.16,   0.00, 0.00, 133.12);
CreateObject(COD2_BUSH, 358.85, -2433.95, 9.82,   0.00, 0.00, 11.59);
CreateObject(COD2_BUSH, 309.81, -2453.85, 6.78,   0.00, 0.00, 103.79);
CreateObject(COD2_BUSH, 308.91, -2447.37, 6.78,   0.00, 0.00, 95.80);
CreateObject(COD2_BUSH, 308.69, -2440.15, 6.78,   0.00, 0.00, 86.52);
CreateObject(COD2_BUSH, 312.80, -2460.10, 6.78,   0.00, 0.00, 124.22);
CreateObject(COD2_BUSH, 327.99, -2450.30, 8.43,   0.00, 0.00, 79.29);
CreateObject(COD2_BUSH, 331.59, -2443.60, 8.23,   0.00, 0.00, 43.57);
CreateObject(COD2_BUSH, 336.33, -2440.66, 7.49,   0.00, 0.00, 29.06);
CreateObject(COD2_BUSH, 322.83, -2450.71, 7.41,   0.00, -8.00, 148.84);
CreateObject(COD2_BUSH, 361.71, -2431.78, 10.77,   0.00, 0.00, 14.36);
CreateObject(COD2_BUSH, 342.64, -2437.88, 7.50,   0.00, 0.00, 20.12);
CreateObject(COD2_BUSH, 345.57, -2436.17, 8.77,   0.00, 0.00, 23.40);
CreateObject(COD2_BUSH, 338.99, -2438.27, 8.77,   0.00, 0.00, 28.15);
CreateObject(COD2_BUSH, 350.81, -2435.57, 8.77,   0.00, 0.00, 11.59);
CreateObject(COD2_BUSH, 349.61, -2434.00, 9.87,   0.00, 0.00, 11.59);
CreateObject(COD2_BUSH, 356.34, -2432.78, 9.87,   0.00, 0.00, 14.36);
CreateObject(COD2_BUSH, 333.49, -2440.69, 8.77,   0.00, 0.00, 28.15);
CreateObject(COD2_BUSH, 328.07, -2445.29, 8.97,   0.00, 0.00, 68.98);
CreateObject(COD2_BUSH, 326.74, -2449.01, 8.97,   0.00, 0.00, 78.00);
CreateObject(COD2_BUSH, 323.68, -2452.92, 8.07,   0.00, -8.00, 332.00);
CreateObject(COD2_BUSH, 320.86, -2450.94, 7.41,   0.00, -8.00, 332.00);
}
else if(!strcmp(name,\"mp_dawnville\"))
{
CreateObject(19817,419.3375,-2478.2483,12.8563,0,0,0,300.0);
CreateObject(19818,419.3375,-2478.2483,12.8563,0,0,0,300.0);
CreateObject(19819,419.3375,-2478.2483,12.8563,0,0,0,300.0);
//Bounds
CreateObject(19820,419.3375,-2478.2483,12.8563,0,0,0,300.0);
}
else if(!strcmp(name,\"mp_burgundy\"))
{
CreateObject(19821,419.3375,-2478.2483,12.8563,0,0,0,300.0);
CreateObject(19822,419.3375,-2478.2483,12.8563,0,0,0,300.0);
//Bounds
CreateObject(19823,419.3375,-2478.2483,12.8563,0,0,0,300.0);
//Details
CreateObject(COD2_BUSH, 361.36, -2509.06, 12.58,   0.00, 0.00, 268.94);
CreateObject(COD2_BUSH, 406.88, -2502.72, 14.04,   0.00, 0.00, 96.27);
CreateObject(COD2_BUSH, 362.46, -2488.55, 12.58,   0.00, 0.00, 255.16);
CreateObject(COD2_BUSH, 361.68, -2495.57, 12.58,   0.00, 0.00, 266.25);
CreateObject(COD2_BUSH, 361.35, -2501.78, 12.58,   0.00, 0.00, 266.25);
CreateObject(COD2_BUSH, 479.91, -2457.97, 12.83,   0.00, 0.00, 47.92);
CreateObject(COD2_BUSH, 347.29, -2511.23, 12.83,   0.00, 0.00, 98.34);
CreateObject(COD2_BUSH, 347.16, -2504.38, 12.83,   0.00, 0.00, 92.17);
CreateObject(COD2_BUSH, 347.14, -2497.87, 12.83,   0.00, 0.00, 90.35);
CreateObject(COD2_BUSH, 347.57, -2491.12, 12.83,   0.00, 0.00, 82.66);
CreateObject(COD2_BUSH, 349.09, -2484.26, 12.83,   0.00, 0.00, 73.53);
CreateObject(COD2_BUSH, 351.97, -2477.78, 12.83,   0.00, 0.00, 63.36);
CreateObject(COD2_BUSH, 355.69, -2472.14, 12.83,   0.00, 0.00, 54.65);
CreateObject(COD2_BUSH, 360.55, -2467.43, 12.83,   0.00, 0.00, 43.22);
CreateObject(COD2_BUSH, 365.15, -2462.34, 12.83,   0.00, 0.00, 47.84);
CreateObject(COD2_BUSH, 370.45, -2457.06, 12.83,   0.00, 0.00, 47.84);
CreateObject(COD2_BUSH, 375.95, -2452.50, 12.83,   0.00, 0.00, 31.86);
CreateObject(COD2_BUSH, 383.68, -2444.71, 11.91,   0.00, 0.00, 84.47);
CreateObject(COD2_BUSH, 385.57, -2445.74, 12.83,   0.00, 0.00, 80.63);
CreateObject(COD2_BUSH, 386.07, -2439.18, 12.83,   0.00, 0.00, 89.16);
CreateObject(COD2_BUSH, 386.30, -2432.11, 12.83,   0.00, 0.00, 89.16);
CreateObject(COD2_BUSH, 387.89, -2425.27, 12.83,   0.00, 0.00, 70.09);
CreateObject(COD2_BUSH, 391.11, -2419.46, 12.83,   0.00, 0.00, 57.20);
CreateObject(COD2_BUSH, 395.87, -2415.43, 12.83,   0.00, 0.00, 30.26);
CreateObject(COD2_BUSH, 402.40, -2413.29, 12.83,   0.00, 0.00, 12.09);
CreateObject(COD2_BUSH, 409.05, -2413.11, 12.83,   0.00, 0.00, 1.63);
CreateObject(COD2_BUSH, 416.37, -2412.86, 12.83,   0.00, 0.00, 1.63);
CreateObject(COD2_BUSH, 423.25, -2412.72, 12.83,   0.00, 0.00, 1.63);
CreateObject(COD2_BUSH, 430.06, -2412.58, 12.83,   0.00, 0.00, 1.63);
CreateObject(COD2_BUSH, 436.46, -2413.32, 12.83,   0.00, 0.00, 353.97);
CreateObject(COD2_BUSH, 441.45, -2414.97, 12.83,   0.00, 0.00, 321.57);
CreateObject(COD2_BUSH, 443.65, -2418.94, 12.83,   0.00, 0.00, 290.49);
CreateObject(COD2_BUSH, 449.07, -2423.63, 12.83,   0.00, 0.00, 352.52);
CreateObject(COD2_BUSH, 455.14, -2424.86, 12.83,   0.00, 0.00, 352.52);
CreateObject(COD2_BUSH, 461.39, -2427.21, 12.83,   0.00, 0.00, 334.16);
CreateObject(COD2_BUSH, 465.71, -2431.53, 12.83,   0.00, 0.00, 297.94);
CreateObject(COD2_BUSH, 467.97, -2438.12, 12.83,   0.00, 0.00, 278.94);
CreateObject(COD2_BUSH, 468.52, -2444.80, 12.83,   0.00, 0.00, 271.13);
CreateObject(COD2_BUSH, 468.81, -2451.64, 12.83,   0.00, 0.00, 271.13);
CreateObject(COD2_BUSH, 469.52, -2458.64, 12.83,   0.00, 0.00, 279.30);
CreateObject(COD2_BUSH, 406.81, -2508.12, 12.42,   0.00, 0.00, 88.23);
CreateObject(COD2_BUSH, 470.76, -2457.13, 11.64,   0.00, 0.00, 271.07);
CreateObject(COD2_BUSH, 496.86, -2435.23, 12.83,   0.00, 0.00, 270.62);
CreateObject(COD2_BUSH, 496.78, -2441.20, 12.83,   0.00, 0.00, 270.62);
CreateObject(COD2_BUSH, 496.57, -2447.76, 12.83,   0.00, 0.00, 268.03);
CreateObject(COD2_BUSH, 496.02, -2454.67, 12.83,   0.00, 0.00, 259.93);
CreateObject(COD2_BUSH, 494.07, -2461.55, 12.83,   0.00, 0.00, 249.63);
CreateObject(COD2_BUSH, 491.31, -2467.21, 12.83,   0.00, 0.00, 243.51);
CreateObject(COD2_BUSH, 487.24, -2472.46, 12.83,   0.00, 0.00, 219.23);
CreateObject(COD2_BUSH, 481.33, -2476.10, 12.83,   0.00, 0.00, 209.16);
CreateObject(COD2_BUSH, 475.04, -2478.21, 12.83,   0.00, 0.00, 189.87);
CreateObject(COD2_BUSH, 467.97, -2478.92, 12.83,   0.00, 0.00, 184.51);
CreateObject(COD2_BUSH, 423.26, -2532.26, 12.83,   0.00, 0.00, 175.79);
CreateObject(COD2_BUSH, 416.50, -2530.51, 12.83,   0.00, 0.00, 157.36);
CreateObject(COD2_BUSH, 412.00, -2526.71, 12.83,   0.00, 0.00, 129.80);
CreateObject(COD2_BUSH, 408.91, -2521.02, 12.83,   0.00, 0.00, 109.90);
CreateObject(COD2_BUSH, 407.57, -2513.98, 12.83,   0.00, 0.00, 93.12);
CreateObject(COD2_BUSH, 381.54, -2450.42, 12.83,   0.00, 0.00, 14.72);
CreateObject(COD2_BUSH, 380.66, -2449.11, 11.91,   0.00, 0.00, 22.05);
CreateObject(COD2_BUSH, 473.76, -2461.18, 12.83,   0.00, 0.00, 14.92);
CreateObject(COD2_BUSH, 474.42, -2459.80, 11.64,   0.00, 0.00, 14.92);
CreateObject(COD2_BUSH, 408.10, -2508.39, 12.42,   0.00, 0.00, 88.23);
CreateObject(COD2_BUSH, 364.53, -2482.63, 11.67,   0.00, 0.00, 243.55);
CreateObject(COD2_BUSH, 365.49, -2483.25, 12.90,   0.00, 0.00, 243.55);
CreateObject(COD2_BUSH, 401.81, -2498.82, 15.06,   0.00, 0.00, 170.08);
CreateObject(COD2_BUSH, 376.88, -2483.47, 14.04,   0.00, 0.00, 153.63);
CreateObject(COD2_BUSH, 382.97, -2487.36, 14.04,   0.00, 0.00, 148.75);
CreateObject(COD2_BUSH, 388.97, -2491.45, 14.04,   0.00, 0.00, 148.75);
CreateObject(COD2_BUSH, 395.49, -2494.95, 14.04,   0.00, 0.00, 155.24);
CreateObject(COD2_BUSH, 402.40, -2497.99, 14.04,   0.00, 0.00, 167.04);
CreateObject(COD2_BUSH, 370.19, -2480.56, 14.04,   0.00, 0.00, 162.49);
CreateObject(COD2_BUSH, 363.60, -2490.22, 14.31,   0.00, 0.00, 262.31);
CreateObject(COD2_BUSH, 379.55, -2486.55, 15.06,   0.00, 0.00, 149.65);
CreateObject(COD2_BUSH, 384.76, -2490.16, 15.06,   0.00, 0.00, 149.65);
CreateObject(COD2_BUSH, 390.83, -2493.73, 15.06,   0.00, 0.00, 155.61);
CreateObject(COD2_BUSH, 397.09, -2496.85, 15.06,   0.00, 0.00, 160.87);
CreateObject(COD2_BUSH, 453.41, -2497.68, 13.65,   0.00, 0.00, 270.04);
CreateObject(COD2_BUSH, 453.44, -2490.90, 13.65,   0.00, 0.00, 270.04);
CreateObject(COD2_BUSH, 420.40, -2517.31, 13.65,   0.00, 0.00, 280.17);
CreateObject(COD2_BUSH, 372.94, -2482.78, 15.06,   0.00, 0.00, 162.49);
CreateObject(COD2_BUSH, 366.25, -2483.94, 14.55,   0.00, 0.00, 238.64);
CreateObject(COD2_BUSH, 432.33, -2507.58, 13.65,   0.00, 0.00, 185.28);
CreateObject(COD2_BUSH, 419.68, -2509.87, 13.65,   0.00, 0.00, 272.39);
}
else if(!strcmp(name,\"mp_railyard\"))
{
    CreateObject(19824,419.3375,-2478.2483,12.8563,0,0,0,300.0);
CreateObject(19825,419.3375,-2478.2483,12.8563,0,0,0,300.0);
CreateObject(19826,419.3375,-2478.2483,12.8563,0,0,0,300.0);
CreateObject(19827,419.3375,-2478.2483,12.8563,0,0,0,300.0);
CreateObject(19828,419.3375,-2478.2483,12.8563,0,0,0,300.0);
//Bounds
CreateObject(19829,419.3375,-2478.2483,12.8563,0,0,0,300.0);
}
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
SpawnPlayer(i);
}
else continue;
}
}
public OnPlayerConnect(playerid)
{
playergun[playerid] = -1;
pvotey[playerid] = 0;
pvoten[playerid] = 0;
SendClientMessage(playerid,0xFFFFFFAA,\"COD2 Mod by Kurtis\");
SendClientMessage(playerid,0xFF0000AA,\"Minden új játékosnak:\");
SendClientMessage(playerid,0xFFFFFFAA,\"Látogass el a {FF0000}www.gta-mpmods.weboldala.net {FFFFFF}oldalra, és töltsd le a szükséges fájlokat a módhoz!\");
return 1;
}
public OnPlayerDisconnect(playerid)
{
    playergun[playerid] = -1;
pvotey[playerid] = 0;
pvoten[playerid] = 0;
if(vip == 1)
{
new count = 0;
new votestat = 0;
new votestat2 = 0;
for(new i = 0; i < MAX_PLAYERS; i++)
{
   if(IsPlayerConnected(i)) count++;
   else continue;
}
for(new i = 0; i < MAX_PLAYERS; i++)
{
   if(IsPlayerConnected(i))
   {
   votestat+=pvotey;
   votestat2+=pvoten;
   }
   else continue;
}
if(votestat >= floatround(count/2,floatround_ceil))
{
   SendClientMessageToAll(0xFFFF00AA,\"A szavazás sikeres.\");
   vip = 0;
   LoadMap(tmpmapname);
   for(new i = 0; i < MAX_PLAYERS; i++)
   {
      if(IsPlayerConnected(i))
      {
      SetPlayerScore(i,0);
      pvotey = 0;
      pvoten = 0;
      }
      else continue;
   }
}
else if(votestat2 >= floatround(count/2,floatround_ceil))
{
    SendClientMessageToAll(0xFFFF00AA,\"A szavazás sikertelen.\");
   vip = 0;
   for(new i = 0; i < MAX_PLAYERS; i++)
   {
      if(IsPlayerConnected(i))
      {
      pvotey = 0;
      pvoten = 0;
      }
      else continue;
   }
}
}
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if(!strcmp(cmdtext, \"/help\", true))
{
    SendClientMessage(playerid,0xFF0000AA,\"Parancsok\");
    SendClientMessage(playerid,0xFFFFFFAA,\"/req - következõ halálkor új fegyver\");
    SendClientMessage(playerid,0xFFFFFFAA,\"/kill - öngyilkosság\");
    SendClientMessage(playerid,0xFFFFFFAA,\"/votemap - pályaszavazás\");
    SendClientMessage(playerid,0xFFFFFFAA,\"/yes | /no - szavazás igen/nem\");
    return 1;
}
if(!strcmp(cmdtext, \"/req\", true))
{
       ShowPlayerDialog(playerid,WEAPON_DIALOG,DIALOG_STYLE_LIST,\"Fegyverek\",wd_list,\"Választ\",\"Kilép\");
       return 1;
}
if(!strcmp(cmdtext, \"/votemap\", true))
{
if(pvotey[playerid] == 0 && pvoten[playerid] == 0 && vip == 0)
{
    ShowPlayerDialog(playerid,MAP_DIALOG,DIALOG_STYLE_LIST,\"Pálya Választás\",map_list,\"OK\",\"Mégse\");
    return 1;
}
else
{
SendClientMessage(playerid,0xFFFF00AA,\"Szavazás folyamatban vagy már szavaztál.\");
}
}
if(!strcmp(cmdtext, \"/yes\", true))
{
if(pvotey[playerid] == 0 && pvoten[playerid] == 0 && vip == 1)
{
   new count = 0;
   new votestat = 0;
   for(new i = 0; i < MAX_PLAYERS; i++)
   {
      if(IsPlayerConnected(i)) count++;
      else continue;
   }
   pvotey[playerid] = 1;
   for(new i = 0; i < MAX_PLAYERS; i++)
   {
      if(IsPlayerConnected(i)) votestat+=pvotey;
      else continue;
   }
   if(votestat >= floatround(count/2,floatround_ceil))
   {
      SendClientMessageToAll(0xFFFF00AA,\"A szavazás sikeres.\");
      vip = 0;
      LoadMap(tmpmapname);
      for(new i = 0; i < MAX_PLAYERS; i++)
      {
         if(IsPlayerConnected(i))
         {
         SetPlayerScore(i,0);
         pvotey = 0;
         pvoten = 0;
         }
         else continue;
      }
   }
}
else
{
SendClientMessage(playerid,0xFFFF00AA,\"Nincs szavazás vagy már szavaztál.\");
}
return 1;
}
if(!strcmp(cmdtext, \"/no\", true))
{
if(pvotey[playerid] == 0 && pvoten[playerid] == 0 && vip == 1)
{
   new count = 0;
   new votestat = 0;
   for(new i = 0; i < MAX_PLAYERS; i++)
   {
      if(IsPlayerConnected(i)) count++;
      else continue;
   }
   pvoten[playerid] = 1;
   for(new i = 0; i < MAX_PLAYERS; i++)
   {
      if(IsPlayerConnected(i)) votestat+=pvoten;
      else continue;
   }
   if(votestat >= floatround(count/2,floatround_ceil))
   {
      SendClientMessageToAll(0xFFFF00AA,\"A szavazás sikertelen.\");
      vip = 0;
      for(new i = 0; i < MAX_PLAYERS; i++)
      {
         if(IsPlayerConnected(i))
         {
         pvotey = 0;
         pvoten = 0;
         }
         else continue;
      }
   }
}
else
{
SendClientMessage(playerid,0xFFFF00AA,\"Nincs szavazás vagy már szavaztál.\");
}
return 1;
}
if(!strcmp(cmdtext, \"/kill\", true))
{
SetPlayerHealth(playerid,0);
return 1;
}
return 0;
}
public OnPlayerRequestClass(playerid, classid)
{
//SetPlayerInterior(playerid,0);
SetPlayerCameraPos(playerid,419.3375,-2478.2483,64);
SetPlayerCameraLookAt(playerid,419.3375,-2478.2483,128);
ShowPlayerDialog(playerid,WEAPON_DIALOG,DIALOG_STYLE_LIST,\"Fegyverek\",wd_list,\"Választ\",\"Kilép\");
return 1;
}
public OnPlayerRequestSpawn(playerid)
{
SendClientMessage(playerid,0xFFFFFFAA,\"INFO: Használd a dialógust a spawnhoz!\");
return 0;
}
public OnPlayerSpawn(playerid)
{
if(!strcmp(mapname,\"mp_toujane\"))
{
new rand = random(sizeof(RndToujane));
SetPlayerPos(playerid,RndToujane[rand][0],RndToujane[rand][1],RndToujane[rand][2]);
SetPlayerFacingAngle(playerid,RndToujane[rand][3]);
}
else if(!strcmp(mapname,\"mp_carentan\"))
{
new rand = random(sizeof(RndToujane));
SetPlayerPos(playerid,RndCarentan[rand][0],RndCarentan[rand][1],RndCarentan[rand][2]);
SetPlayerFacingAngle(playerid,RndCarentan[rand][3]);
}
else if(!strcmp(mapname,\"mp_dawnville\"))
{
new rand = random(sizeof(RndToujane));
SetPlayerPos(playerid,RndDawnville[rand][0],RndDawnville[rand][1],RndDawnville[rand][2]);
SetPlayerFacingAngle(playerid,RndDawnville[rand][3]);
}
else if(!strcmp(mapname,\"mp_burgundy\"))
{
new rand = random(sizeof(RndToujane));
SetPlayerPos(playerid,RndBurgundy[rand][0],RndBurgundy[rand][1],RndBurgundy[rand][2]);
SetPlayerFacingAngle(playerid,RndBurgundy[rand][3]);
}
else if(!strcmp(mapname,\"mp_railyard\"))
{
new rand = random(sizeof(RndToujane));
SetPlayerPos(playerid,RndRailyard[rand][0],RndRailyard[rand][1],RndRailyard[rand][2]);
SetPlayerFacingAngle(playerid,RndRailyard[rand][3]);
}
//SetPlayerInterior(playerid,1);
GivePlayerWeapon(playerid,24,50);
GivePlayerWeapon(playerid,playergun[playerid],2000);
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
if(killerid == INVALID_PLAYER_ID)
        SendDeathMessage(INVALID_PLAYER_ID,playerid,reason);
else
{
SendDeathMessage(killerid,playerid,reason);
SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
}
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == WEAPON_DIALOG)
{
if(response == 1)
{
           if(listitem == 0)
      playergun[playerid] = 30;
   if(listitem == 1)
      playergun[playerid] = 31;
            if(listitem == 2)
      playergun[playerid] = 25;
           if(listitem == 3)
      playergun[playerid] = 27;
   if(listitem == 4)
      playergun[playerid] = 29;
            if(listitem == 5)
      playergun[playerid] = 33;
   if(listitem == 6)
      playergun[playerid] = 34;
   if(GetPlayerState(playerid) == 0 || GetPlayerState(playerid) == 7 ||
   GetPlayerState(playerid) == 8 || GetPlayerState(playerid) == 9)
      SpawnPlayer(playerid);
}
else
{
   if(playergun[playerid] == -1)
      playergun[playerid] = 30;
   if(GetPlayerState(playerid) == 0 || GetPlayerState(playerid) == 7 ||
   GetPlayerState(playerid) == 8 || GetPlayerState(playerid) == 9)
      SpawnPlayer(playerid);
}
}
if(dialogid == MAP_DIALOG)
{
    if(response == 1)
    {
   new string[256];
   new pname[32];
       tmpmapname = maplist[listitem];
       new count = 0;
   for(new i = 0; i < MAX_PLAYERS; i++)
   {
      if(IsPlayerConnected(i)) count++;
      else continue;
   }
   pvotey[playerid] = 1;
   GetPlayerName(playerid,pname,32);
   format(string,256,\"%s a következõ pályát szavazta: %s\",pname,tmpmapname);
   SendClientMessageToAll(0xFFFF00AA,string);
   SendClientMessageToAll(0xFFFF00AA,\"Szavazás: /yes - igen | /no - nem\");
   vip = 1;
   if(pvotey[playerid] >= floatround(count/2,floatround_ceil))
   {
      SendClientMessageToAll(0xFFFF00AA,\"A szavazás sikeres.\");
      LoadMap(tmpmapname);
      vip = 0;
      for(new i = 0; i < MAX_PLAYERS; i++)
      {
         if(IsPlayerConnected(i))
         {
         SetPlayerScore(i,0);
         pvotey = 0;
         pvoten = 0;
         }
         else continue;
      }
   }
    }
}
}

 
Letöltés ITT

26
Pluginok és Programok / SA-MP Ultimate Position Saver
« Dátum: 2012. Május 21. - 16:11:25 »
Lehet kicsit túlzás a neve, de röviden azért készítettem, mert már zavart SA-MP-ben a /save vagy /rs beírogatása, kimeneti fájl utólagos formázgatása meg ilyenek, ezért megalkottam ezt a programot, amivel kényelmesebben le lehet menteni a pozíciókat, úgy ahogy neked jól esik, olyan formázással amilyet te akarsz. Adatok: X,Y,Z,Angle,Radius, ami a legjobb, hogy lehet írni neki elejét és végét. Viszont nem kiírással jelzi a mentést, hanem egy hangot ad ki, ha rácsatlakoztál a programmal a San Andreas-ra. Sajnos manuálisan kell rácsatlakozni a játékra (futás közben alt-tab), de lehet így lesz a legjobb.
E miatt is jó, mert e helyett (/save):
AddPlayerClass(0,x,y,z,ang,w1,w1a,...);
Lehet ilyet is:
SetPlayerCheckpoint(playerid,x,y,z,rad);
Vagy akár tömbhöz:
{x,y,z},
2 fájl-al dolgozik a program:
Konfigurációs fájl: samp_upsav.ini (ha törlöd újat generál legközelebb)
Kimeneti fájl: samp_upsavedpos.txt
Letöltés itt (forráskóddal)

27
SA-MP: Szerverfejlesztés / Call of Duty 2 Maps Mod
« Dátum: 2012. Május 19. - 17:16:20 »
Egyenlõre csak úgy lehet ha a módba beleszerkesztesz, pl:
Ezt a részt
 
//Work In Progress...
public OnGameModeInit()
{
SetGameModeText(\"COD2 Mod\");
ShowPlayerMarkers(0);
ShowNameTags(0);
LoadMap(\"mp_toujane\");
AddPlayerClass(287,419.3375,-2478.2483,15.8563,0.0,0,0,0,0,0,0);
return 1;
}

 
Átírod erre (vagy mp_dawnville):
 
//Work In Progress...
public OnGameModeInit()
{
SetGameModeText(\"COD2 Mod\");
ShowPlayerMarkers(0);
ShowNameTags(0);
LoadMap(\"mp_carentan\");
AddPlayerClass(287,419.3375,-2478.2483,15.8563,0.0,0,0,0,0,0,0);
return 1;
}

 
Szerk.:
Mostmár nem feltétlen szükséges átírni azt az 1 sort, hanem játék közben megszavazható másik pálya, 1 játékos esetén 1 pillanat alatt átválthatsz a másik pályára.

28
Pluginok és Programok / SA-MP Server Configuration Generator
« Dátum: 2012. Május 19. - 16:32:00 »
A logtime nekem tökéletesen mûködik, nem tudom hogy mi lehet a gond, kipróbáltam, hogy beírom, nekem tökéletesen betöltötte, 0 hibával. Közben hozzáadtam gyorsba a repeat, más néven azt a számot ami a módismétlést jelzi több mód esetén. Ha tudsz kódban mellékelni egy olyan cfg-t amiben hibásan adja be az adatot lehet tudok valamit kezdeni vele, de nem biztos.
A háttérdolgozó (background worker) hibáját kijavítottam szintúgy.

29
Modok / [MAP]GTA Wild Life 4.0 (Végleges)
« Dátum: 2012. Május 19. - 14:12:29 »
A csapat:
Kurtis - 3D modellezés, programozás, térképkezelés
Sleepy93HUN - 3D modellezés
Zoli - 3D modellezés (1.0-ig dolgozott velünk azután eltûnt valahova)
Tesztelõk:
ASGPatrick
ASGArmand
Tomi
Mód létrejötte
A mód 2011 március környékén kezdõdött el, jó sokáig nem volt kiadva az elsõ verzió, mivel még alig volt benne valami, elsõsorban a táj volt csak, késõbb jöttek a házak, fák, és a bokrok, meg még 1-2 kisebb dolog. A multival is próbálkoztam közben, legelõször GTA Rumble-t használtam, késõbb MTA-t állítottam hozzá a módhoz, ekkor még nem volt expp mappa. Egy barátom helyigény hiánya miatt kezdtem el ezt a különleges rendszert bevezetni, aztán megírtam a San Andreas Changert, hasznosnak tûnt, csak lassan váltotta át a játékot. Késõbb rájöttem hogyan lehet megoldani a 2 exe használatot MTA-ban, ekkor jött létre az MTA launcher, és a patcher. Ez már a 2.0-s verzió volt. Késõbb elkezdtem foglalkozni a 2.5-nél a fagenerálással, a 2.5 augusztus vége felé már majdnem végleges változatában volt megírva. Ekkor jöttek a kisebb laggok, mivel kb. 1 fa 16 ezer poly volt, és egy 4gb-os gép kb 4 millió polyt tud felkezelni egyszerre elméletileg (kb 200-250 fa volt lerakva, amibõl kb 50 minimum be volt töltve). Az utolsó 2 verzió már az utolsó simítások voltak, kisebb easter eggek, forgalom létrehozása, stb. Miután a 4.0-hoz érkeztem, kissé sietõsre fogtam a tempót, mondjuk úgy hogy összecsapott lett a romváros enyhén szólva, de szerintem élvezhetõre sikeredett. Nemsokkal a 4.0 után kifejlesztettem hozzá egy SA-MP-t 0.2X-es launcher, 0.3a-s dll (fegyverek miatt) és kisebb módosítgatásokkal megcsináltam a wild lifehoz a multiplayert. A \"kampány\" (küldetés csomag) DYOM-el lett megírva, utólag se bánom, mivel a SA SCM-e kicsit túl nehéz lett volna nekem, és sok idõt vett volna el.
A mód semmilyen eredeti fájlodat nem fogja felül írni, jár mellé egy MTA patcher és egy különálló SA-MP, a launcherben meg könnyedén elindíthatunk mindent (ha nem mûködne valami jól, akkor kénytelenek vagyunk megnyitni magát a fájlt)
Módról röviden
8 sziget van a játékban:
- 2 Erdõs
- Havas
- Város
- Sivatag
- Romváros
- Dzsungel
- Rejtett
2 db bázis van a játékban:
- A kezdõ szigeten (erdõ)
- Város szigeten
Fegyverek (amik eltérnek a SA-tól):

!Ha ugyanaz a neve egy fegyvernek, mint a SA-ban, az le lett cserélve!

Közelharci:
- Faág
- Láncfûrész
Pisztoly:
- Beretta
- Desert Eagle
- Silenced UZI
Sörétesek:
- Winchester
- Sawn-off
- SPAS 12
Géppisztolyok:
- Ppsh
- Thompson
- MP5 (régebbiekben MP40)
Géppuskák:
- AMD-65 (régebbiekben Stg44)
- AK-47
Nehézfegyverzet:
- MG-42
Puskák:
- Puska
- Dragunov-SVD
Speciális:
- Távcsõ (4.0 elõttieknél fényképezõgép)
!Minden fegyvernek van egy típusikonja, alatta a neve található!
Küldetések:
Ha a küldetés exe-t indítod el új játék indításakor a következõ epizódok érhetõek el:
Prológus - Katonaságon kiképzés, a bázist megtámadják a 2. részben, el kell szökni végleg a városból.
1. Epizód - Lezuhant gép utáni történet, 2 katonai csoport szövetségének megoldása és menekülés.
2. Epizód - Folyamatos menekülés a vörös katonacsoport elõl, késõbb ellentámadás a kék katonacsoport segítségével, ezzel béke uralkodik a Wild Life-n, egyenlõre.
Bónusz Epizód - Aki ismeri a Wolfenstein 3D-t annak szerintem nem sok újat fog ez jelenteni, 1. és 9. pálya.
A karaktered nem CJ (2.5-tõl), lásd a 2.5-ös trailerben.
A mód külön mappát használ, nem ír felül semmi fontos fájlt, 4.0-s verzió telepítése erõsen ajánlott, így a CLEO nem akad össze a másik CLEO-val. Ha van DYOM-od, nem akadnak össze, mivel módosított DYOM-ot használ a mód.
Videó:
IRDu8L8ht_Q
 

Letöltés:
Verzió 4.0
4.0-hoz tartozó javítás
SA-MP Port (teljessen különálló fileokkal dolgozik, kivéve a 2png-t, nyugodtan felrakható a másik mellé):
Kliens
Szerver
Arhívum (kevésbé ajánlott):
Verzió 3.0
3.0-hoz tartozó javítás
Verzió 2.5
2.5-höz tartozó javítás
Verzió 2.0
Verzió 1.0

30
Pluginok és Programok / SA-MP Server Configuration Generator
« Dátum: 2012. Május 19. - 13:16:14 »
1-2 éve körülbelül, azt a hibát meg most már tényleg ki javítom, gondolom senki se vette észre azt a nagyon minimális memória szivárgást (csak halmozza fel a memóriahasználatot a program, ebben az esetben max 10-100kb körüli ha új dialógust tölt be, ha nem 48 órán át fut a program akkor semmi gond nincs belõle)

Oldalak: 1 [2] 3 4
SimplePortal 2.3.7 © 2008-2024, SimplePortal