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
     
Fel/le csatlakozás

 

Csatlakozási és távozási üzenet
by ALIEN
Előszó
Üdv, most megmutatom hogy-hogy csinálhatunk üzenetet,
amikor valaki csatlakozik a szerverre vagy éppen,
távozik a szerverről. Na lássuk is.

------------------------------------Csatlakozás:----------------------------------
Itt egy üzenetet fogunk csinálni a többi
playernek hogy tudják hogy te csatlakoztál a szerverre.
Itt egy példa: ALIEN csatlakozott a szerverre.
public OnPlayerConnect(playerid) -nél fogunk dolgozni,
úgy hogy keressük is meg, vagy ha nincs akkor írjunk egyet.
1.Elsőnek is hozzunk létre 2 tárolót.
Az egyik, a játékos nevét fogja tárolni, a másik a szöveget fogja tárolni.
Kód:
new pName[MAX_PLAYER_NAME];// a játékos nevét tárolja
new string[256];// a szöveget tárolja

2.
Most meg kell tudnunk a játékos nevét, erre a GetPlayerName
függvényt fogjuk használni:
Kód:
GetPlayerName(playerid, pName, sizeof(pName)); // ezzel a parancsal tudjuk meg a játékos nevét

3.
Most az eltárolt nevet az üzenetbe be kell valahogy helyezni.
Ehhez hívjuk, segítségül a format -ot:
Kód:
format(string, sizeof(string), "%s csatlakozott a szerverre.", pName);// %s = játékos neve és üzenete

4.
És már csak el kell küldeni az üzenetet mindenkinek.
 Ehhez a SendClientMessageToAll függvényt fogjuk használni:
Kód:
SendClientMessageToAll(0x00FF28FF, string); elküldi mindenkinek az üzenetet
-a string az eltárolt üzenet.
Itt egy minta:
Kód:
public OnPlayerConnect(playerid)
{
new pName[MAX_PLAYER_NAME];
new string[46];
GetPlayerName(playerid, pName, sizeof(pName));
format(string, sizeof(string), "%s csatlakozott a szerverre.", pName);
SendClientMessageToAll(0x00FF28FF, string);
return 1;
}


---------------------------------------------Távozás:--------------------------------

Itt az üzenetet arra az esetre fogjuk megcsinálni ha a játékos távozik.
PL. -ban/kick, -időtullépés, -vagy csak símán kilépett a játékos.
Itt egy példa: ALIEN elhagyta a szervert.
Most a public OnPlayerDisconnect(playerid, reason)-nál fogunk dolgozni.
Keressük meg, vagy ha nincs akkor csináljunk egyet.
1.Megint kellenek a new-ek, a lecsatlakozó player
nevének tárolásához és a szöveg tárolásához:
Kód:
new name[MAX_PLAYER_NAME];
new str[128];

2.
Megint lekérdezzük a játékos nevét GetPlayerName -val:
Kód:
GetPlayerName(playerid, name, sizeof(name));

3.
Most kell egy switch függvény hogy a szöveg megfelelő legyen:
Kód:
switch(reason)

4.
Most létre kell hozni különféle
pontokat ahol a játékost bannolták, kilépett vagy időtúllépés volt nála.
case parancsal fogjuk végre hajtani.
Most elsőnek ban/kick-es üzenetet foglyuk megcsinálni:
Kód:
case 0:	format(str, sizeof(str), "*** %s (%d) Kilépett a szerverről (Időtullépés)", name, playerid);
Most ugyanúgy megcsináljuk az időtúllépéses üzenettel, és a kilépéses üzenettel is!
Kód:
case 1:	format(str, sizeof(str), "*** %s (%d) Kilépett a szerverről (Kilépés)", name, playerid);

Kód:
case 2:	format(str, sizeof(str), "*** %s (%d) Kilépett a szerverről (Kirúgva/Bannolva)", name, playerid);

Mintláthattátok csak a sorszámot és a szöveget kellet megváltoztatni.
És már kész is, itt egy példa:
  1. public OnPlayerDisconnect(playerid, reason)
  2. {
  3.         new name[MAX_PLAYER_NAME], str[128];
  4.         GetPlayerName(playerid, name, sizeof(name));
  5.         switch (reason) {
  6.         case 0: format(str, sizeof(str), "*** %s (%d) Kilépett a szerverről (Időtullépés)", name, playerid);
  7.         case 1: format(str, sizeof(str), "*** %s (%d) Kilépett a szerverről (Kilépés)", name, playerid);
  8.         case 2: format(str, sizeof(str), "*** %s (%d) Kilépett a szerverről (Kirúgva/Bannolva)", name, playerid);
  9.         }
  10.         SendClientMessageToAll(0xC0C0C0AA, str);
  11.         return 1;
  12. }

Utószó

Remélem sokat segítettem ezzel a bemutatóval. Most már jöhetnek a kritikák.

 

5 hozzászólás
Idézet
2012.04.28. 11:06
DAVID

public OnPlayerConnect(playerid)
{
    new pName[MAX_PLAYER_NAME];
    new string[46];
    GetPlayerName(playerid, pName, sizeof(pName));
    format(string, sizeof(string), "%s [ID:%d] Csatlakozott A Szerverre.", pName, playerid);
    SendClientMessageToAll(0x0dff00AA, string);
    return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    new name[MAX_PLAYER_NAME], str[128];
    GetPlayerName(playerid, name, sizeof(name));
    switch (reason) {
    case 0: format(str, sizeof(str), "*** %s [ID:%d] Kilépett A Szerverről. (Időtullépés)", name, playerid);
    case 1: format(str, sizeof(str), "*** %s [ID:%d] Kilépett A Szerverről. (Kilépet)", name, playerid);
    case 2: format(str, sizeof(str), "*** %s [ID:%d] Kilépett A Szerverről. (Kirúgva/Bannolva)", name, playerid);
    }
    SendClientMessageToAll(0x0dff00AA, str);
    return 1;
}

 

Tess itt egy teljes minta csak másold be és változtasd meg a szint ha meg akarod

Idézet
2012.01.17. 23:28
[DON]$Marcury$

Akkor valamit rosstul csináltál

Idézet
2011.02.20. 12:46
matyi

 beraktam, de valahogy a játékba baléptem de nem írta ki 

Idézet
2010.11.02. 17:42
palez

azt hogy lehet, hogy pl csak annak is irjon valamit, aki csatlakozik?

pl.: Üdv a Szerven, érezd jól magad!

__________________________________________________________________________________________________________________________

válasz:

A SendClientMessageToAll(...); helyére ezt teszed SendClientMessage(playerid, színkód, "szöveg");

Idézet
2010.11.01. 13:04
Matt

 Hali.Ezt a csatlakozás/távozást jelző üzit hogy lehet beállítani h csak adminnak mutassa?

______________________________________________________________________________________________________________________

válasz:

Ez attol függ mien adminnak mutassa Rcon nak vagy a te saját admin scriptedbe lévőnek.

     
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