GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Leírások/Útmutatók => A témát indította: Csabesz - 2010. Március 06. - 18:52:54

Cím: [TuT] DM zóna létrehozása
Írta: Csabesz - 2010. Március 06. - 18:52:54
DM zóna létrehozása
 
Na, amit Ti is láthatjátok a címbol, most azt fogom leírni Nektek, hogy hogyan is lehet megoldani, azt ha valaki DM zónába van, akkor onnan csak egy bizonyos paranccsal tudjon kijönni ill. más parancsot se  tudjon használni addig.  :)
Na kezdjük is el:  :P
1. Létre kell hozni egy globális változót, ami tárolja, hogy a játékos Dm zónába van-e vagy nincs
 
new: bool:DM[MAX_PLAYERS];

 
A változónknak két értéke lehet,
 - elso: True( igaz )
 - második: False( hamis ).
Akkor a True jelzi majd, hogy DM zónába van, és a False pedig hogy nincs.
2. Ha valaki csatlakozik a szerverre akkor a DM változó értéke egyértelmuen False ( hamis ) lesz.
 

public OnPlayerConnect(playerid)
{
   DM[playerid] = false;
   return 1;
}

 
Tehát, False ( hamis ) értéket adtunk neki.
3. Ha valaki le csatlakozik akkor is False ( hamis ) értéket adunk neki.
 
public OnPlayerDisconnect(playerid, reason)
{
   DM[playerid] = false;
   return 1;
}

 

Jöhetnek a parancsok
 
4. DM parancs létrehozása
 
if(strcmp(cmdtext, \"/dm\") == 0 ) 
{
   if(DM[playerid] == true) return SendClientMessage(playerid,0xFFFF00AA,\"DM zónában vagy ! Eloször /exitdm\"); // Lekérdezzük hogy DM zónában van-e vagy nincs
   ResetPlayerWeapons(playerid); // meglévo fegyvereit elvesszük
   GivePlayerWeapon(playerid,32,1000); // Adunk neki fegyvert
   SetPlayerArmour(playerid, 100); // Adunk neki páncélt
   SetPlayerPos(playerid,2782.3257,-2019.7649,13.5620); // Teleport koordinátája ( ide teleportálja )
   SendClientMessage(playerid, 0xFFFF00AA,\"Csatlakoztál a DM-hez! Kilépéshez: /exitdm\"); // Ki írunk neki egy \'infó\' szöveget
   DM[playerid] = true; // beállítjuk a DM változót, hogy True ( igaz ) értéket mutasson.
   return 1; // Visszatérés
}

 
Hát ennyi lenne, egy egyszeru DM parancs, de ezt még lehet \'cifrázni\' karakter,fegyver,élet,páncél mentésével.  :)
Na, ha már megvolt a DM parancs, akkor hozzunk létre egy exitdm nevu parancsot.  :D
5. Exitdm parancs létrehozása
 
if(strcmp(cmdtext, \"/exitdm\") == 0)
{
   if(DM[playerid] == false) return SendClientMessage(playerid,0xFFFF00AA,\"Nem vagy DM zónában!\");
   DM[playerid] = false; // Ha a játékos sikeresen kilépet akkor false ( hamis ) értéket kap
   SendClientMessage(playerid, 0xFFFF00AA,\"Sikeresen kiléptél a DM zónából!\"); // Ha kilépett a DM zónából akkor küldünk neki üzenetet
   ResetPlayerWeapons(playerid); // Elvesszük a fegyvereit.
   return 1; // Visszatérés
}

 
Tehát, ez lesz az a parancs, amit a DM zónába használhat.
6. Nézzünk egy egyszeru parancsot
 
if(strcmp(cmdtext, \"/tudom\") == 0) 
{
   if(dm[playerid] == true) return SendClientMessage(playerid,0xFFFF00AA,\"DM zónában vagy ! Eloször /exitdm\"); // Megvizsgáljuk, hogy DM zónába vane- vagy nincs, ha nincs akkor lefut a parancs
   SendClientMessage(playerid,0xFFFF00AA,\"Ezt már te is megtanultad!\"); // szöveget írunk neki, ha nincs DM zónában
   return 1; // Visszatérés
}

 
Hát ennyi lenne röviden.  Lehet kifogom egészíti az adatok mentésével.  ::)
Sok sikert.  ;D
Cím: [TuT] DM zóna létrehozása
Írta: dnsdj - 2010. Március 06. - 19:19:16
Szia.. jó lett :D Szép leírás

Egy kis Nyelv botlás... itt :D

 
Akkor a Ture jelzi majd, hogy DM zónába vanm és a False pedig hogy nincs.

 
Ture gondolom true akar lenni :D

De télleg szép lett :D Gratz.:D



Üdv..dnS\'
Cím: [TuT] DM zóna létrehozása
Írta: Csabesz - 2010. Március 06. - 19:21:21
Kösz.
Tényleg botlás volt. ;D
Javítva.  ::)
Cím: [TuT] DM zóna létrehozása
Írta: Depi - 2010. Március 06. - 19:37:07
Szép leírás kezdoknek nagyon hasznos  :) Grat :)
Cím: [TuT] DM zóna létrehozása
Írta: Csabesz - 2010. Március 06. - 19:33:57
Köszönöm
Cím: [TuT] DM zóna létrehozása
Írta: DaNeEe9 - 2010. Március 08. - 19:03:35
nagyon jó ez a leírás grat  :D ..jó hasznát veszem
Cím: [TuT] DM zóna létrehozása
Írta: [M]D[S]Rotary - 2010. Március 13. - 10:41:34
Hasznos kis tut grat  ;)
Cím: [TuT] DM zóna létrehozása
Írta: Csabesz - 2010. Március 13. - 15:51:52
Köszönöm.
Cím: [TuT] DM zóna létrehozása
Írta: kurta999 - 2010. Március 13. - 22:24:11
Jó leírás, de ha az összes parancsot ki akarod kapcsolni DM be akkor ezt az OnPlayerCommandText tetejére:
[pawn]if(DM[playerid]>true&& strcmp(cmdtext, \"/kill\", true)&& strcmp(cmdtext, \"/weapons\", true)&& strcmp(cmdtext, \"/bomb\", true) && strcmp(cmdtext, \"/exitdm\", true) != 0)return SendClientMessage(playerid,COLOR_RED, \"[HIBA] DM zónába vagy, itt csak ezeket a parancskoat használhatod: /exitdm, /kill, /weapons /bomb\"); // ide meg írjuk azokat a parancsokat amiker használhat dm be
[/pawn]
Cím: [TuT] DM zóna létrehozása
Írta: Zsox - 2011. Július 26. - 00:32:43
Idézetet írta: Ronii date=1267897974\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"886\" data-ipsquote-contentclass=\"forums_Topic

DM zóna létrehozása
 
Na, amit Ti is láthatjátok a címbol, most azt fogom leírni Nektek, hogy hogyan is lehet megoldani, azt ha valaki DM zónába van, akkor onnan csak egy bizonyos paranccsal tudjon kijönni ill. más parancsot se  tudjon használni addig. 
(...)
Hát ennyi lenne röviden.  Lehet kifogom egészíti az adatok mentésével.  ::)
 
Mikor?  :@
Cím: [TuT] DM zóna létrehozása
Írta: Csabesz - 2011. Július 26. - 09:45:46
Fuu, ez a téma még létezik ?  ??? Az szép.  :D
Ez a leírást felejtsd el, van ennél jobb.
http://sampforum.hu/index.php?topic=3967.0
Cím: [TuT] DM zóna létrehozása
Írta: Ezredes.$ - 2012. Február 23. - 15:42:46
Jó leírás,sokat segítettél.:D
Cím: [TuT] DM zóna létrehozása
Írta: Honda - 2012. Március 13. - 16:45:53
Idézetet írta: Yѕtee date=1267897974\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"886\" data-ipsquote-contentclass=\"forums_Topic

DM zóna létrehozása
 
Na, amit Ti is láthatjátok a címbol, most azt fogom leírni Nektek, hogy hogyan is lehet megoldani, azt ha valaki DM zónába van, akkor onnan csak egy bizonyos paranccsal tudjon kijönni ill. más parancsot se  tudjon használni addig.  :)
Na kezdjük is el:  :P
1. Létre kell hozni egy globális változót, ami tárolja, hogy a játékos Dm zónába van-e vagy nincs
 
new: bool:DM[MAX_PLAYERS];

 
A változónknak két értéke lehet,
 - elso: True( igaz )
 - második: False( hamis ).
Akkor a True jelzi majd, hogy DM zónába van, és a False pedig hogy nincs.
2. Ha valaki csatlakozik a szerverre akkor a DM változó értéke egyértelmuen False ( hamis ) lesz.
 

public OnPlayerConnect(playerid)
{
    DM[playerid] = false;
    return 1;
}

 
Tehát, False ( hamis ) értéket adtunk neki.
3. Ha valaki le csatlakozik akkor is False ( hamis ) értéket adunk neki.
 
public OnPlayerDisconnect(playerid, reason)
{
    DM[playerid] = false;
    return 1;
}

 

Jöhetnek a parancsok
 
4. DM parancs létrehozása
 
if(strcmp(cmdtext, \"/dm\") == 0 ) 
{
    if(DM[playerid] == true) return SendClientMessage(playerid,0xFFFF00AA,\"DM zónában vagy ! Eloször /exitdm\"); // Lekérdezzük hogy DM zónában van-e vagy nincs
    ResetPlayerWeapons(playerid); // meglévo fegyvereit elvesszük
    GivePlayerWeapon(playerid,32,1000); // Adunk neki fegyvert
    SetPlayerArmour(playerid, 100); // Adunk neki páncélt
    SetPlayerPos(playerid,2782.3257,-2019.7649,13.5620); // Teleport koordinátája ( ide teleportálja )
    SendClientMessage(playerid, 0xFFFF00AA,\"Csatlakoztál a DM-hez! Kilépéshez: /exitdm\"); // Ki írunk neki egy \'infó\' szöveget
    DM[playerid] = true; // beállítjuk a DM változót, hogy True ( igaz ) értéket mutasson.
    return 1; // Visszatérés
}

 
Hát ennyi lenne, egy egyszeru DM parancs, de ezt még lehet \'cifrázni\' karakter,fegyver,élet,páncél mentésével.  :)
Na, ha már megvolt a DM parancs, akkor hozzunk létre egy exitdm nevu parancsot.  :D
5. Exitdm parancs létrehozása
 
if(strcmp(cmdtext, \"/exitdm\") == 0)
{
    if(DM[playerid] == false) return SendClientMessage(playerid,0xFFFF00AA,\"Nem vagy DM zónában!\");
    DM[playerid] = false; // Ha a játékos sikeresen kilépet akkor false ( hamis ) értéket kap
    SendClientMessage(playerid, 0xFFFF00AA,\"Sikeresen kiléptél a DM zónából!\"); // Ha kilépett a DM zónából akkor küldünk neki üzenetet
    ResetPlayerWeapons(playerid); // Elvesszük a fegyvereit.
    return 1; // Visszatérés
}

 
Tehát, ez lesz az a parancs, amit a DM zónába használhat.
6. Nézzünk egy egyszeru parancsot
 
if(strcmp(cmdtext, \"/tudom\") == 0) 
{
    if(dm[playerid] == true) return SendClientMessage(playerid,0xFFFF00AA,\"DM zónában vagy ! Eloször /exitdm\"); // Megvizsgáljuk, hogy DM zónába vane- vagy nincs, ha nincs akkor lefut a parancs
    SendClientMessage(playerid,0xFFFF00AA,\"Ezt már te is megtanultad!\"); // szöveget írunk neki, ha nincs DM zónában
    return 1; // Visszatérés
}

 
Hát ennyi lenne röviden.  Lehet kifogom egészíti az adatok mentésével.  ::)
Sok sikert.  ;D
 
Grat! Szépen átnézhetõ, tiszta, és szerintem könnyû is.
Cím: [TuT] DM zóna létrehozása
Írta: Gabor.. - 2012. Március 13. - 16:51:33
PVar-al is meglehet csinálni :) Am jó lett! :)
Cím: [TuT] DM zóna létrehozása
Írta: Csabesz - 2012. Március 13. - 17:23:24
Idézetet írta: Gabor.. date=1331653893\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"886\" data-ipsquote-contentclass=\"forums_Topic
PVar-al is meglehet csinálni :) Am jó lett! :)
 
Mikor írtam, akkor még nem volt PVar  ;)
Cím: [TuT] DM zóna létrehozása
Írta: kurta999 - 2012. Március 13. - 17:44:23
PVar az ilyen helyekre elmehet aludni.
Régen énis dicsértem, de ezután megváltozott a véleményem és Y_Less-nek igaza is van.
Cím: [TuT] DM zóna létrehozása
Írta: Gabor.. - 2012. Március 13. - 19:14:19
Ebbõl nem értek semmit se :D XD
Mármint amit kurat linkelt. :D
Cím: [TuT] DM zóna létrehozása
Írta: BenceDaPro - 2012. Április 10. - 12:14:46
Üdv.
Nagyon szép leírás köszönöm sokat segítettél  :)
Már csak azt kéne tudnom hogy hogyan lehet azt megoldani hogy random helyekre spawnolja az embereket..
Na meg a másik kérdés hogy 2 csapatot pl.piros-kék csapatot hogyan lehet megcsinálni?Hogy ne tudják egymást ölni?Ez még nagy kérdés számomra   ::|
Cím: [TuT] DM zóna létrehozása
Írta: Csabesz - 2012. Április 10. - 19:20:43
Véletlenszerû Spawn:
http://sampforum.hu/index.php?topic=8808.0
Annyi, hogy a mostani kódba kicseréled erre a SetPlayerPos-t.
Sebezhetõség:
http://wiki.sa-mp.com/wiki/SetPlayerTeam
http://wiki.sa-mp.com/wiki/GetPlayerTeam
Egyik csapatnak az 1es másiknak a 2es azonosítód adod.
Cím: [TuT] DM zóna létrehozása
Írta: BenceDaPro - 2012. Április 10. - 20:15:00
Idézetet írta: Yѕtee date=1334078443\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"886\" data-ipsquote-contentclass=\"forums_Topic
Véletlenszerû Spawn:
http://sampforum.hu/index.php?topic=8808.0
Annyi, hogy a mostani kódba kicseréled erre a SetPlayerPos-t.
Sebezhetõség:
http://wiki.sa-mp.com/wiki/SetPlayerTeam
http://wiki.sa-mp.com/wiki/GetPlayerTeam
Egyik csapatnak az 1es másiknak a 2es azonosítód adod.
 
Köszönöm,holnap megvalósítom :D
Ezt a teames dolgot,hogyan oldjam meg dialogba?Ha elmagyaráznád részletesebben megköszönném  ^-^
Ment a +  ;D
Cím: [TuT] DM zóna létrehozása
Írta: Csabesz - 2012. Április 10. - 21:57:16
Idézetet írta: BenceDaPro date=1334081700\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"886\" data-ipsquote-contentclass=\"forums_Topic


Véletlenszerû Spawn:
http://sampforum.hu/index.php?topic=8808.0
Annyi, hogy a mostani kódba kicseréled erre a SetPlayerPos-t.
Sebezhetõség:
http://wiki.sa-mp.com/wiki/SetPlayerTeam
http://wiki.sa-mp.com/wiki/GetPlayerTeam
Egyik csapatnak az 1es másiknak a 2es azonosítód adod.
 
Köszönöm,holnap megvalósítom :D
Ezt a teames dolgot,hogyan oldjam meg dialogba?Ha elmagyaráznád részletesebben megköszönném  ^-^
Ment a +  ;D

[/quote]
Lehet nem ebbe a témába kéne megbeszélnünk. Ezért PM-be majd leírom :) Persze gondolom a dialógus készítés megy ezért egy alap kódot küldhetnél  ;D
Cím: [TuT] DM zóna létrehozása
Írta: Beckham - 2012. Április 30. - 19:47:15
jah ebbol sokat tanultam csak az a kár hogy rp szerom van
Cím: [TuT] DM zóna létrehozása
Írta: fbsokk - 2012. Május 02. - 06:40:11
Nagyon szép leírás lett . Pont olyanoknak való mint én :P :D
Cím: [TuT] DM zóna létrehozása
Írta: [(The_Pro_Kari)] - 2012. Július 29. - 11:55:39
Köszi ezt kerestem!! :D ment a plusz!