Noss ezt azért hoztam létre, hogy segítsek a nagyon kezdõknek akik most kezdik el a pawnot használni
/*
(v:0,2)
#include
pl:#include
enélkül nem tudsz semmit csinálni szinte a pawnoban mármint samp terén
az includeban is ilyenek vannak pl definíciók kódok változók stb.... pl.:belerakod a mysql stb hozzáférés adatait és így ha a módot meg is szerzik attól nem tudják meg az adatokat
de ez egy hólye példa volt mert ne merre szokták használni csak hogy érzékeltessem hogy bármire lehet használni
egy részlet a a_samp inculdból
\"#include
#include
#include
#include
#include
#define MAX_PLAYER_TEXT_DRAWS (256)
#define MAX_MENUS (128)
#define MAX_3DTEXT_GLOBAL (1024)
#define MAX_3DTEXT_PLAYER (1024)
#define MAX_PICKUPS (4096)
#define INVALID_MENU (0xFF)
#define INVALID_TEXT_DRAW (0xFFFF)
#define INVALID_GANG_ZONE (-1)
#define INVALID_3DTEXT_ID (0xFFFF),,
Magyarul ami benne van úgy érzékeli mintha benne lenne a módban, nagyjából ennyi
elhelyezése: lehetõleg a mód legelejére de mindenképpen az on game mode init fölé (legalábbis oda szokás, nemtudom mi lesz ha alá rakod nem próbáltam még)
-----------------------------------------------------------------------------------------------------------
#define ... na ezt sok féle dologra használják.. definícióra de több \"változatban\" ha lehet így kifejezni magam
példa: #define zöld 0x9EC73DAA - jelen esetben be \"definiáltad\" a 0x9EC73DAA (vagyis a zöld színt) arra hogyha beírod pls a SendClientMessage-ba a szin helyére hogy zöld akkor azt is el fogja fogadni(megjegyzés:a szineket ugy szoktál pl hogy: COLOR_ZOLD, COLOR_RED stb de nicns nagyon jelentõsége csak megjegyezheto stb stb stb
de pl akik magyarosítják a pawnot szoktak: #define ha if (itt féldául az if helyére írod hogy ha akkor azt is elfogadja)
de szokták használni munkákra , de akármire... (a lényegét elmondtam a többit már egy adott témára specializálódott leírásban, a lényegbõl már megérted miért mi)
elhelyezése hasonló az includokéhoz.. a publikok fölé az includok alá
(v:0,1)
A legelején elmagyarázok pár alap dolgot..
------------------------------------------------------------------------------------
------------------------------------------------------------------------------------
SencClientMessage-Ezzel tudunk üzenetet küldeni... szöveget megjeleníteni
3 paramétere van
-playerid (a játékos aki cselekszik)
-color ( vagyis szín ezt pl itt: \"http://sampforum.hu/index.php?page=color\" tudtok keverni magatoknak
-message (vagyis az üzenet amit kiírjon...)
Így néz ki:SendClientMessage(playerid,-1,\"Ezt írja ki a szerver\");
Ez azt jelenti hogyha ez egy parancsban lenne benne akkor kiiírná annak a játékosnak aki beírta a parancsot hogy:
\"Ezt írja ki a szerver\" és fehér színnel mivel a -1 -et fehér színnek érzékeli a pawno
-----------------------------------------------------------------------------------
-----------------------------------------------------------------------------------
SendClientMessageToAll-Ez hasonló az elõzõhöz csak ez minden fentlévõ játékosnak elküldi az üzenetet... ezt hírdetésekre csatlakozás értsítõnek lehet pl. használni
2 paramétere van
-color (egy szín)
-message (és az üzenet...)
(Ide NEM kell a playerid mivel itt minden játékosnak elküldi az üzenetet.
Példa:SendClientMessageToAll(-1,\"Segítség kell? sampforum.hu\");
Ezt pl. egy random üzenetküldõbe lehet felhasználni.. ez annyit tesz hogy minden fentlévõ játékosnak kiírja h:Segítség kell? sampforum.hu
--------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------
SetPlayerPos-Ezzel tudunk pl. teleportot készíteni stb. ez arra szolgál, hogy a játékost eljutassuk egy adot pozíóra/ba
Paraméterei:
-playerid (a játékos aki cselekszik)
-x,y és z kordináta
Ez így néz ki:SetPlayerPos(playerid,2671.6074,894.9944,11.1189);
Ez azt jelenti hogy elvitte az adott játékost a 2671.6074,894.9944,11.1189- kordinátára
---------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------
GivePlayerWeapon-Ezzel tudunk a játékosnak fegyvert adni
paraméterei:
playerid(a játékos aki cselekszik)
weaponid(a fegyver id-je) (ezeket itt találod meg \"http://wiki.sa-mp.com/wiki/Weapons\")
ammo(hogy mennyi töltényt adjon bele)
Pl: GivePlayerWeapon(playerid,30,400); - ezzel adunk neki egy AK47 et 400 tölténnyel
*/
/*
OnFilterScriptInit
Ez az hogy mi történjen amikor megnyitódik az adott filterscript
Itt pl. kiírja a logba hogy: xy Filterscript betöltve
*/
public OnFilterScriptInit()
{
print(\"\\n--------------------------------------\");
print(\" xy Filterscript betöltve\");
print(\"--------------------------------------\\n\");
return 1;
}
/*
OnFilterScriptExit
Itt az hogy mi történjen ha leállna a filterscript
*/
public OnFilterScriptExit()
{
return 1;
}
/*
OnPlayerConnect
Ez az amikor a játékos csatlakozik itt nagyon sok mindent csinálhatunk...
pl. Adhatunk neki egy üdvözlõ üzenetet... Megkérdezehtjük tõle milyen csapatba szeretne álni.. Regisztráltathatjuk stb
-----------------------------------------------------------------------------------------------------------------------
Pl: Megcsinálom h ha feljön a játékos akkor kiírja neki h : üdv a szerveren a parancsékért /help
*/
public OnPlayerConnect(playerid)
{
SendClientMessage(playerid,-1,\"Üdv a szerveren. A parancsokért \'/help\'\");
return 1;
}
/*
OnPlayerDisconnect
ez az hogy ha lelép a játékos ... itt kiírhatjuk pl a logba hogy valaki kilépett a szerverrõl
*/
public OnPlayerDisconnect(playerid, reason)
{
printf(\"Valaki kilépett a szerverrõl\");
return 1;
}
/*
OnPlayerSpawn
Ez az hogy ha a játékos már lespawnolt... itt.. odaadhatunk neki pl. fegyvert
*/
public OnPlayerSpawn(playerid)
{
GivePlayerWeapon(playerid,31,500);//most odaadtunk neki egy 500 tölis m4 et
return 1;
}
/*
OnPlayerDeath
ez akkor hívódik meg ha meghalt a játékos ... itt kiírhatjuk neki hogy ki ölte meg vagy h mivle v stb.
*/
public OnPlayerDeath(playerid, killerid, reason)
{
return 1;
}
/*
OnPlayerCommandText
ez a pawno alap parancsfeldolgozója... a kezdõk szerintem elõször ezen tnauljanak meg parancsot létrehozin..
--------------------------------------------------------------------------------------------------------------------------------
Most megcsináljuk azt hogyha beírja a játékos azt h /ls akkor elteleportálja ls be..(és kiírja h elteleportált)
Elõször is menjünk fel egy szerverre... vagy a samp debug ra ... utána egy tetszõleges pozícióra és /save(DE FONTOS hogy NE üljünk jármáben)
( a /save után írhatunk valamit hogy könnyeb legyen megtalálni mi mi pl: \"/save kezdohely\" akkor az AddPlayerClass végén a // után lesz amit a /save után beírtunk
Ezután elfogja menteni ezt nekünk amit a Dokumentumok/GTA San Andreas User Files/SAMP/savedpositions -ben találunk meg
AddPlayerClass(292,2478.2583,-1652.9495,13.4688,177.5633,0,0,0,0,0,0); // getto
Na ebbõl nekünk a 292(ami a skint jelenti amiben elmentettem) utáni 3 vesszõvel(,) elválasztott szám kell jelenleg pl:2478.2583,-1652.9495,13.4688
*/
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(\"/ls\", cmdtext, true, 10) == 0)
{
SetPlayerPos(playerid,2478.2583,-1652.9495,13.4688);
SendClientMessage(playerid,-1,\"Elteleportáltál LS be\");
return 1;
}
return 0;
}
/*
A // és a / * * / arra szolgálnak hogy commentbe rakom a szöveget vagyis a pawno nem érzékeli amit ide írok
*/
/*
v0,3
Ebben a updateban a zcmd-t mutatom be mivel most értem ide (igen jópár hónap után :D) hogy szánjak erre a topickomra idõt... és sok negatív komment érkezett hogy miért nem a zcmd meg a zcmd gyorsabb stb... ezért most ez lesz a követekzõ
*/
/*
A zcmd sokak szerint az egyik leggyorsabb és legegyszerûbb parancsfeldolgozó a pawnoban.. használatához nincs más dolgunk mint letölteni az includeját ( http://www.solidfiles.com/d/879d1213462fc1562d16d464e90c8cf9/ ) elhelyezni a pawno/include mappába és a pawnoba az include-k közé beszúrni a következõt: #include
Használata.. szinte bárhová de mindenen kívül (tehát az onplayercommandtexttõl eltérõen csak simán helyezzük bele a pawnoba ne legyen semmilyen {} között)
*/
CMD:parancs(playerid, params[])
{
//ide a kívánt cselekvést
return 1;
}
/*
fontos: a CMD: után NEM kell \"/\" jel
paraméterei:
-playerid: a parancsot beíró játékos
-params[]: a szóköz után rakott szöveg
*/
/*
==================================================================FIGYELEM=======================================
Ezt azért hoztam létre hogy akik még egyáltalán nem jártasak a pawnoban azoknak valamivel tudjak segíteni...
Akimár jobban tudja a pawnot használni annak semmi haszna ez de nem is nekik készítettem
*/
v:0,2 (include,define)
v:0,3 (zcmd)
v:0,4-ben még nem tudom, hogy mi szerepeljen de majd végignézem a segítségkérés topicot és a legtöbbet kérdezett gondokat fogom összeírni benne
Utoljára frissítve: 2013.11.17 23:30
Jó leírás! Grat!
Nagyon szép! Teljesen alkalmas ez a kezdõk számára... Ha ezt egy videóba vagy képekbe rögzítenéd a legjobbak közé tartozna...
OnPlayerCommandText
ez a pawno alap parancsfeldolgozója... a kezdõk szerintem elõször ezen tnauljanak meg parancsot létrehozin..
szerintem meg nem,mivel az már elavult,lassú,sz.r
am szép leírás
OnPlayerCommandText
ez a pawno alap parancsfeldolgozója... a kezdõk szerintem elõször ezen tnauljanak meg parancsot létrehozin..
szerintem meg nem,mivel az már elavult,lassú,sz.r
am szép leírás
Egyáltalán nem lassú,csak bonyolult a paraméterfeldolgozás.
lassú a parancsfeldolgozója,nagyobb módnál,létszámnál akkora laggot okoz.
Szerintem meg ott a hiba, hogy PAWN, és nem PAWNO. Ezen felül meg az OnPlayerCommandText nem elvault, és lassú, a lassú ami ellenõrzi a stringeket.
Lassú a fenét... anno írtam ZCMD nélkül egy 20k soros GM-et, sok \'rendszerrel\' ami egyébként megterhelné a hostot, de semmi gond nem volt...
Egyébként meg ez a téma inkább a \"Leírások/Útmutatók\" fórumba való. ;)
Köszönöm a dicséreteket. Õhm direkt OnPlayerCommandText-et használtam mivel elég elõször azt megtanulni a kezdõknek ....és elnézést hogy nem pawn- ot írtam hanem pawnot és tényleg rossz helyre nyitottam... közbe már rájöttem ...és köszönöm, hogy átherjezted
folytatást :)
folytatást :)
várható :D
Mondjuk ezeket eddig is tudtam ééééés nem programozok egyáltalán. :)
Mondjuk ezeket eddig is tudtam ééééés nem programozok egyáltalán. :)
... Az te vagy.. .. :D De nem biztos, hogy mindenki tudja ...
OnPlayerCommandText
ez a pawno alap parancsfeldolgozója... a kezdõk szerintem elõször ezen tnauljanak meg parancsot létrehozin..
szerintem meg nem,mivel az már elavult,lassú,sz.r
Erre
Szerintem meg ott a hiba, hogy PAWN, és nem PAWNO. Ezen felül meg az OnPlayerCommandText nem elvault, és lassú, a lassú ami ellenõrzi a stringeket.
[/quote]
És a kevésbe szakavatott szemeknek, akik azt hiszik, hogy az OnPlayerCommandText(..) elavult, elárulom, hogy egyetlen olyan parancsfeldolgozót sem találtok, ami nem OnPlayerCommandText-re épül..
Köszönöm, nagy hasznomra válik kezdõ scripter létemre :D
Huh köszi szépen! Sokat segített. :thumbsup: :thumbsup: :thumbsup:
Hasznos kis TuT, grat!
Nekem tetszik, sokat segített, bár ki egészíthetnéd 1-2 dologgal.
Ahogy már írták korábban, minden parancsfeldolgozó az OnPlayerCommandText()-re épül, a zcmd azt csinálja, hogy minden parancsnak csinál egy külön függvényt, amit aztán CallLocalFunction()-nal meghív, így gyorsabb, mint az egyesével végignézegetés. Ami egyébként csak akkor érezhetõen lassú, ha nagy (úgy értem, nagy) a kód és pont olyan parancsot írsz be, ami nem létezik.
Hm...jó :)
Na itt lenne az ideje frissíteni vagyis az 1.1 nek :D Kérdem én: Milyen újdonságot tegyek a köv. verzióóóba?
Menj egyel tovább, nehezebbeket :D
De konkrét dolgokra gondoltam xd
Köszönöm nekem jól jött mivel én is most kezdek pawnot tanulni én arra szeretnélek kérni téged, hogy a #define meg az #include fogalmakat bemutathatnád úgy, hogy egy (kezdõ pl.:én) is megértse. Elõre is köszi :)
Oké még ma belrakom
szerk: benne van , remélem érthetõ és nem hibás .. :D este van már ha kell még valami ilyesmi valakinek aki most kezdi írjon ide ebbe a témába
Szép leirás grat majd én csinálok 1 et vidivel is :D
Szép leirás grat majd én csinálok 1 et vidivel is :D
Köszi .. oké sok szerencsét hozzá :D
Ezt kerestem mar miota. Sok mindenki a parancs keszites meg aznilyesfajta izeket mutatja be. De en mint kezdo mit csinaljak azzal amit megmutattak? Azt se tudtam , hogy hova kell beirni ha meghal a jatekos vagy csatlakozik, koszonom , hogy itt leirtad , hogy mi ala mik kellenekq, kezdoknek ez az elso lecke es nem az if vagy a cellback vagy mi. Ha meg akarok tanulni olvasni elsonek a betuket tanulom meg es nem a szavakat, mondatokat. Ezer hala!!!!!!