Szerző Téma: [Scripting Eszköz]A sscanf függvény [Paraméter Beolvasó]  (Megtekintve 24997 alkalommal)

[Scripting Eszköz]A sscanf függvény [Paraméter Beolvasó]
« Válasz #75 Dátum: 2011. november 24. - 22:08:22 »
0 Show voters
Eddig volt nekem saját login/register systeme és mióta beraktam a sscanfot azóta van egy másik lett hirtelen kick bann és hasonló parancsok pedig be se raktam és hogy ezt nem lehet valahogy kikapcsolni vagy valahogy kivenni mert ezek nekem nem kellenek csak a csupasz sscanf

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
[Scripting Eszköz]A sscanf függvény [Paraméter Beolvasó]
« Válasz #76 Dátum: 2012. január 22. - 02:40:54 »
0 Show voters
Újabb verzió elérhetõ!
sscanf 2.5 letöltése!
Írtam hozzá pár dolgot. Ajánlom a legelsõ részét elolvasni.
 
  • Custom (kustom) specifiers



A legújabb sscanf verzióban bekerült egy új elválasztó, ami a \"k\". E elválasztó segítségével létre lehet hozni saját specifiert.
 

SSCANF:playerstate(string[])
{
if (\'0\' <= string[0] <= \'9\')
{
new
   ret = strval(string);
if (0 <= ret <= 9)
{
   return ret;
}
}
else if (!strcmp(string, \"PLAYER_STATE_NONE\")) return 0;
else if (!strcmp(string, \"PLAYER_STATE_ONFOOT\")) return 1;
else if (!strcmp(string, \"PLAYER_STATE_DRIVER\")) return 2;
else if (!strcmp(string, \"PLAYER_STATE_PASSENGER\")) return 3;
else if (!strcmp(string, \"PLAYER_STATE_WASTED\")) return 7;
else if (!strcmp(string, \"PLAYER_STATE_SPAWNED\")) return 8;
else if (!strcmp(string, \"PLAYER_STATE_SPECTATING\")) return 9;
}

 
Ha ezt a kódot belerakod a módodba, akkor ez hozzáadja a \"playerstate\" nevû specifier-t. Következõ képpen tudod ezt használni:
[pawn]
sscanf(params, \"uk<playerstate>\", playerid, state);
[/pawn]
Ez a rendszer szintén támogatja az alapértelmezett értéket. Itt a az alapértelmezett érték a \"PLAYER_STATE_NONE\" lesz:
[pawn]
sscanf(params, \"uK<playerstate>(PLAYER_STATE_NONE)\", playerid, state);
[/pawn]
Az új \"sscanf2.inc\" függvénykönyvtár tartalma két darab specifier-t. Ez a \"k<weapon>\" és a \"k<vehicle>\". Ennek a segítségével letudsz hívni fegyvert/kocsit ID, vagy név szerint. Ha nem ID-t írsz, akkor lefut a \"weapon\"/\"vehicle\" rész és név szerint kikeresi neked az ID-t és azzal tér vissza.
Az egyéni specifier-ek nem támogatják a tömböket és az enumokat!
Jegyezd meg, hogy az egyedi specifier-nek a bemenet típusa mindig karakterlánc, és mindig egy számmal tár vissza. Ez lehet Float, bool, vagy akármilyen más egy cellás tag típus.
 
  • Keresés



Keresni egy általunk beírt karakterláncra egy megadott karakterláncban a következõ képpen tudunk:
[pawn]sscanf(\"10 11 woo 12\", \"i\'woo\'i\", var0, var1);[/pawn]
A kimenet a következõ lesz:
 

var0 = 10
var1 = 12

 

  • Fent-e van a játékos a szerveren



Rengeteg helyen észreveszem, hogy a beírt ID-t IsPlayerConnected() el ellenõrzik le.
Ez pedig felesleges, mivel az sscanf-nél ha az \"u\" paramétert használod, akkor az automatikusan leellenõrzni, hogy a játékos csatlakozva-e van. Ha nincs, akkor 0xFFFF-el fog visszatérni = (65535 = INVALID_PLAYER_ID).
Tehát elég lenne ennyit is csinálni:
[pawn]if(sscanf(params, \"ui\", player1, score)) return SendClientMessage(playerid, COLOR_RED, \"HASZNÁLAT: /setscore <Játékos ID/Név> <Pont>\");
if(player1 == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_RED, \"HIBA: Játékos nincs csatlakozva!\");
[/pawn]

[Scripting Eszköz]A sscanf függvény [Paraméter Beolvasó]
« Válasz #77 Dátum: 2012. január 22. - 08:38:21 »
0 Show voters
Szerintem nem éri meg váltani sscanf 2.5-re, a szerverem be bugolt miatta..Visszaraktam a régi sscanf-et a 2.0-t és egybõl jó lett

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
[Scripting Eszköz]A sscanf függvény [Paraméter Beolvasó]
« Válasz #78 Dátum: 2012. január 22. - 11:56:15 »
0 Show voters
Töröld a callback hook rendszert az include-bõl, és írd bele a módodba!
Nekem is ezvolt a problémám, megcsináltam és ment minden.
De szerintem ezt Y_Less javítani fogja..

[Scripting Eszköz]A sscanf függvény [Paraméter Beolvasó]
« Válasz #79 Dátum: 2012. január 22. - 15:14:52 »
0 Show voters
Ok majd megcsinem, kösz kurta!:D

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
[Scripting Eszköz]A sscanf függvény [Paraméter Beolvasó]
« Válasz #80 Dátum: 2012. április 02. - 21:58:34 »
0 Show voters
Elérhetõ a 2.6-os verzió, abban már javítva van az \"u\" paraméter, amikor nemlétezõ játékosokra nem INVALID_PLAYER_ID-vel tért vissza.

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
[Scripting Eszköz]A sscanf függvény [Paraméter Beolvasó]
« Válasz #81 Dátum: 2012. december 28. - 10:18:03 »
0 Show voters
Megjelent a 2.8.1-es verzió, amiben nagyon sok hasznos új lehetõség bekerült.
Érdemes elolvasni újra az üzenetet, nem írom ki mik az újak benne.
http://forum.sa-mp.com/showthread.php?t=120356

[Scripting Eszköz]A sscanf függvény [Paraméter Beolvasó]
« Válasz #82 Dátum: 2016. január 09. - 15:07:04 »
0 Show voters
Én mindent úgy csináltam, ahogy kell, ahogy szépen leírtad, de érdekes!!! Nekem miért nem jó, és amúgy NINCSEN BENNE az sscanf2.inc abba a letöltési mappádba se... és nem ismeri fel, ha beleteszem, ha beleírom a server mappába a plugins-t, és az elejére is a scriptnek ,semmi, valyon miért lehet, valaki help pls, mert már a vérnyomásom min. 1000-en van :D

[Scripting Eszköz]A sscanf függvény [Paraméter Beolvasó]
« Válasz #83 Dátum: 2016. január 10. - 00:24:23 »
+2 Show voters
A téma indítója, szerintem most forgott meg a sírjában.
www.twitch.tv/almightymartin

Az év STAFF tagja - 2015
Az év RP szervere - 2015 - [rc-rp.hu]

Red County Role Play [rc-rp.hu] - Tulajdonos
Project San Andreas [psa.hu] - Főadminisztrátor
See MTA LV [see-game.com] - Admin 4

Nem elérhető Pedró

  • 3341
  • 2014 © Az év Szkriptere
    • Profil megtekintése
[Scripting Eszköz]A sscanf függvény [Paraméter Beolvasó]
« Válasz #84 Dátum: 2016. január 10. - 08:28:16 »
0 Show voters
Idézetet írta: almightymartin date=1452381863\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"1375\" data-ipsquote-contentclass=\"forums_Topic
A téma indítója, szerintem most forgott meg a sírjában.
 
Elhunyt? :\'(

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal