Gta San Andreas MultiPlayer (samp) HUN
Navigation
     
Account
Felhasználónév:

Jelszó:
SúgóSúgó
Regisztráció
Elfelejtettem a jelszót
     
Kép
Szerver
Legyen ennek a weboldalnak saját samp szervere?

Igen
Nem
Szavazás állása
Lezárt szavazások
     
Friss

Utolsó módosítás
2013 máj. 19.
12:17

 

     
Más weblapok
 SA:MP Fórum
SA:MP Wiki
Google

     

PAWN Eszközök
     
DM készítés
Forrás:Depi, SampFórumról DM zóna létrehozása

 

Na, amit Ti is láthatjátok a címből, 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. 

Mosolyog

Na kezdjük is el: 

Bibííí

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

Kód:
new: bool:DM[MAX_PLAYERS];

A változónknak két értéke lehet,

 - első:

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értelműen False ( hamis ) lesz.

Kód:
public OnPlayerConnect(playerid)
{
    DM[playerid] = false;
    return 1;
}

Tehát, True ( hamis ) értéket adtunk neki.


3.
Ha valaki le csatlakozik akkor is False ( hamis ) értéket adunk neki.

Kód:
public OnPlayerDisconnect(playerid, reason)
{
    DM[playerid] = false;
    return 1;
}

 

Jöhetnek a parancsok

4.

DM parancs létrehozása

Kód:
if(strcmp(cmdtext, "/dm") == 0 ) 
{
    if(DM[playerid] == true) return SendClientMessage(playerid,0xFFFF00AA,"DM zónában vagy ! Először /exitdm"); 
// Lekérdezzük hogy DM zónában van-e vagy nincs
    ResetPlayerWeapons(playerid); // meglévő 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 egyszerű DM parancs, de ezt még lehet 'cifrázni' karakter,fegyver,élet,páncél mentésével. 

Mosolyog

Na, ha már megvolt a DM parancs, akkor hozzunk létre egy exitdm nevű parancsot. 

Vigyorog

5.

Exitdm parancs létrehozása

Kód:
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 egyszerű parancsot

Kód:
if(strcmp(cmdtext, "/tudom") == 0) 
{
    if(dm[playerid] == true) return SendClientMessage(playerid,0xFFFF00AA,"DM zónában vagy ! Előszö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. 

Hááát

Sok sikert.

 

Vigyorog

8 hozzászólás
Idézet
2018.01.08. 14:40
AntiPower

Az elejét elrontottad.

new: bool:DM[MAX_PLAYERS];

helyett

new bool:DM[MAX_PLAYERS];

A kettőspont nem kell a new után.

Idézet
2013.05.08. 16:48
Davis

HI és csapatos dmzonát hogylehet létrehjozni?

Jelölj skypeon pls

Skyepom: rihard234

Idézet
2012.03.12. 15:28
SweetF

Azt szeretném kérdezni hogy ezt a dm es parancsok/csokat meglehet irni ZCMD ben is? ha igen segitene valaki?

Idézet
2011.10.02. 13:27
Power

Swgítsééég!

Csinálnám a DM parancsot de ezt írja ki:

 

D:\Server\dmamiremelemmukodik.pwn(57) : error 017: undefined symbol "DM"
D:\Server\dmamiremelemmukodik.pwn(57) : warning 215: expression has no effect
D:\Server\dmamiremelemmukodik.pwn(57) : error 001: expected token: ";", but found "]"
D:\Server\dmamiremelemmukodik.pwn(57) : error 029: invalid expression, assumed zero
D:\Server\dmamiremelemmukodik.pwn(57) : fatal error 107: too many error messages on one line
 
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
 
 
4 Errors.
 
De nem tom mit csináljak
Idézet
2011.03.10. 14:56
feheristi

if(strcmp(cmdtext,"/superjump",true)==0)
{
new vehicleid = GetPlayerVehicleID(playerid);
new State = GetPlayerState(playerid);
if(IsPlayerInAnyVehicle(playerid) && State == PLAYER_STATE_DRIVER)
{
GameTextForPlayer(playerid,"Pipe-Stunt",4000,6);
new string[256], pname[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, sizeof(pname));
format(string, sizeof(string), "%s elteleportált a jumpra (/superjump) ", pname);
SendClientMessageToAll(orange, string);
return SetVehiclePos(vehicleid,1394.7571,-2425.7009,525.6313);
}
SetPlayerPos(playerid,1394.7571,-2425.7009,525.6313);
return 1;
}
return 0;
}

Ez egy teleportálo parancs szerintem jo sikerült ha van egy mapod akkor ezt tedd hozá

Idézet
2010.12.04. 00:32
Magyar

A zónát.Mármint gondolom arra gondolsz hogy hova teleportáljon amikor be/ki lépsz a DM-be/ből.Poziciót mindig a SetPlayerPos(playerid, X, Y, Z);

-hez írunk az X, Y, Z -ez jön a három kordináta és akkor oda rakja a játékost.

Idézet
2010.11.16. 16:27
Question

Huhu, de jó hogy ezt megtaláltam, már rég akartam ilyeneket, de nekem ugye halál után mindig vissza rakott az alap spawn helyre, de most már végre ilyet is tudok, most már olyanokat csinálok, hogy huha. Szal thanks!!!:D

Idézet
2010.10.02. 22:20
palesz_88

nade hol kell beál..itani a zónát? vagymi :s

     
Nézettség
Indulás: 2010-02-26
     
PAWN/Szkriptek
     
Tutorialok
     
Óra
     
Chat
Kérlek, felesleges dolgokat ne írj a chatbe!
Név:

Üzenet:
:)) :) :@ :? :(( :o :D ;) 8o 8p 8) 8| :( :'( ;D :$
     

Ha te is könyvkiadásban gondolkodsz, ajánlom figyelmedbe az postomat, amiben minden összegyûjtött információt megírtam.    *****    Nyereményjáték! Nyerd meg az éjszakai arckrémet! További információkért és játék szabályért kattints! Nyereményjáték!    *****    A legfrissebb hírek Super Mario világából, plusz információk, tippek-trükkök, végigjátszások!    *****    Ha hagyod, hogy magával ragadjon a Mario Golf miliõje, akkor egy egyedi és életre szóló játékélménnyel leszel gazdagabb!    *****    A horoszkóp a lélek tükre, nagyon fontos idõnként megtudni, mit rejteget. Keress meg és nézzünk bele együtt. Várlak!    *****    Dryvit, hõszigetelés! Vállaljuk családi házak, lakások, nyaralók és egyéb épületek homlokzati szigetelését!    *****    rose-harbor.hungarianforum.com - rose-harbor.hungarianforum.com - rose-harbor.hungarianforum.com    *****    Vérfarkasok, boszorkányok, alakváltók, démonok, bukott angyalok és emberek. A világ oly' színes, de vajon békés is?    *****    Az emberek vakok, kiváltképp akkor, ha olyasmivel találkoznak, amit kényelmesebb nem észrevenni... - HUNGARIANFORUM    *****    Valahol Delaware államban létezik egy város, ahol a természetfeletti lények otthonra lelhetnek... Közéjük tartozol?    *****    Minden mágia megköveteli a maga árát... Ez az ár pedig néha túlságosan is nagy, hogy megfizessük - FRPG    *****    Why do all the monsters come out at night? - FRPG - Why do all the monsters come out at night? - FRPG - Aktív közösség    *****    Az oldal egy évvel ezelõtt költözött új otthonába, azóta pedig az élet csak pörög és pörög! - AKTÍV FÓRUMOS SZEREPJÁTÉK    *****    Vajon milyen lehet egy rejtélyekkel teli kisváros polgármesterének lenni? És mi történik, ha a bizalmasod árul el?    *****    A szörnyek miért csak éjjel bújnak elõ? Az ártatlan külsõ mögött is lapulhat valami rémes? - fórumos szerepjáték    *****    Ünnepeld a magyar költészet napját a Mesetárban! Boldog születésnapot, magyar vers!    *****    Amikor nem tudod mit tegyél és tanácstalan vagy akkor segít az asztrológia. Fordúlj hozzám, segítek. Csak kattints!    *****    Részletes személyiség és sors analízis + 3 éves elõrejelzés, majd idõkorlát nélkül felteheted a kérdéseidet. Nézz be!!!!    *****    A horoszkóp a lélek tükre, egyszer mindenkinek érdemes belenéznie. Ez csak intelligencia kérdése. Tedd meg Te is. Várlak    *****    Új kínálatunkban te is megtalálhatod legjobb eladó ingatlanok között a megfelelõt Debrecenben. Simonyi ingatlan Gportal