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

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => A témát indította: [HUN]0.3c Scripter - 2011. augusztus 15. - 01:54:40

Cím: Ruhabolt
Írta: [HUN]0.3c Scripter - 2011. augusztus 15. - 01:54:40
Helló!Most Éjjel Készitettem ezt a scriptet!
Meg Kell Mondjam ennél egyszerübb script nem is lehetne :)
Script Neve:Ruhabolt
Elkészitési Idõ:2Perc :)
Parancsok:/ruhabolt-Az Információért
                 /ruhavesz-Skinváltál(pénzért)
Itt is van a Pawno Code:
[pawn]////////|Ruhabolt|//////////
////////|Betöltve|//////////
//|By [HUN]0.3c Scripter|//
#include <a_samp>
#define ZÖLD 0x00FF40FF
public OnFilterScriptInit()
{
print(\"\\n--------------------------------------\");
print(\" Ruhabolt Betöltve!Információ:/ruhabolt\");
print(\"--------------------------------------\\n\");
return 1;
}
public OnFilterScriptExit()
{
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(\"/ruhabolt\", cmdtext, true, 10) == 0)
{
   SendClientMessage(playerid,ZÖLD,\"Üdvözöllek!\");
   SendClientMessage(playerid,ZÖLD,\"Minden Ruha 500$!(+szállitási dij)\");
   SendClientMessage(playerid,ZÖLD,\"Ha Ruhát Szeretnél Vásárolni /ruhavesz [iD]\");
   return 1;
}
if (strcmp(\"/ruhavesz\", cmdtext, true, 10) == 0)
{
   SendClientMessage(playerid,ZÖLD,\"Használat:/ruhavesz [iD]\");
   SetPlayerSkin(playerid,0-299);
   SendClientMessage(playerid,ZÖLD,\"Vettél Egy Ruhát!Ár Levonva.(500$+szállitási dij,100$)\");
   GivePlayerMoney(playerid, -500);
   GivePlayerMoney(playerid, -100);
   return 1;
}
return 0;
}[/pawn]
Ha valami hiba van szoljatok,nekem ment :)
Cím: Ruhabolt
Írta: herban - 2011. augusztus 15. - 02:14:36
Nem rossz de jobb, ha zcmd-t használsz.
Cím: Ruhabolt
Írta: [T.I.R.]Kenguru - 2011. augusztus 15. - 05:59:36
Ahhoz hogy azt a skint adja be amit a játékos szeretne, érdemes sscanf-ot használni. A te verziód mûködésképtelen. Nem szemétségbõl mondom, hanem azért hogy tanulj.
Tessék itt az átjavított verzió, zcmd-vel és scccanf2-vel:
 
////////|Ruhabolt|//////////
////////|Betöltve|//////////
//|By [HUN]0.3c Scripter|//
#include <a_samp>
#include <zcmd>
#include <sscanf2>
#define ZÖLD 0x00FF40FF
public OnFilterScriptInit()
{
print(\"\\n--------------------------------------\");
print(\" Ruhabolt Betöltve!Információ:/ruhabolt\");
print(\"--------------------------------------\\n\");
return 1;
}
public OnFilterScriptExit()
{
return 1;
}
CMD:ruhabolt(playerid) {
SendClientMessage(playerid,ZÖLD,\"Üdvözöllek!\");
SendClientMessage(playerid,ZÖLD,\"Minden Ruha 500$!(+szállitási dij)\");
SendClientMessage(playerid,ZÖLD,\"Ha Ruhát Szeretnél Vásárolni /ruhavesz [iD]\");
return 1;
}
CMD:ruhavesz(playerid,params[]) {
new skin;
if(sscanf(params , \"u\" ,skin)) SendClientMessage(playerid,ZÖLD,\"Használat:/ruhavesz [iD]\");
SetPlayerSkin(playerid,skin);
SendClientMessage(playerid,ZÖLD,\"Vettél Egy Ruhát! Ár Levonva.(500$+szállitási dij,100$)\");
GivePlayerMoney(playerid, -500);
GivePlayerMoney(playerid, -100);
return 1;
}
Cím: Ruhabolt
Írta: [HUN]0.3c Scripter - 2011. augusztus 15. - 10:01:19
Kösz :) ,de nekem ugy is ment ahogy én irtam!
Cím: Ruhabolt
Írta: Armani - 2011. augusztus 15. - 10:12:47
Hogy ennek mi az értelme ez egy egyszerü skinváltó rendszer amiben nem vagyok biztos hogy megy na mind 1 Grat biztos jo
Cím: Ruhabolt
Írta: Zsolesszka - 2011. augusztus 15. - 10:54:27
@[HUN]0.3c Scripter
Nem lehet második paramétert használni az általad kiírt parancsban.
Hiába írom be /ruhavesz 211 nem a 211-es skint adja.
@Gumikacsa
A sscanf-nél az \"u\" format típus jelölés az játékosnév vagy playerid lehetõséget takar.
Amit írtál abban vagy \"d\" vagy \"i\" típust kell megadni, és mivel nem használsz else lehetõséget ezért egy return is hiányzik.
 
if(sscanf(params , \"u\" ,skin)) SendClientMessage(playerid,ZÖLD,\"Használat:/ruhavesz [iD]\");
SetPlayerSkin(playerid,skin);
[/quote]
[pawn]if(sscanf(params, \"d\" ,skin)) return SendClientMessage(playerid, ZÖLD, \"Használat:/ruhavesz [iD]\");
SetPlayerSkin(playerid, skin);[/pawn]
Cím: Ruhabolt
Írta: [T.I.R.]Kenguru - 2011. augusztus 15. - 13:28:57
Idézetet írta: Zsolesszka date=1313398467\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"10449\" data-ipsquote-contentclass=\"forums_Topic
@[HUN]0.3c Scripter
Nem lehet második paramétert használni az általad kiírt parancsban.
Hiába írom be /ruhavesz 211 nem a 211-es skint adja.
@Gumikacsa
A sscanf-nél az \"u\" format típus jelölés az játékosnév vagy playerid lehetõséget takar.
Amit írtál abban vagy \"d\" vagy \"i\" típust kell megadni, és mivel nem használsz else lehetõséget ezért egy return is hiányzik.
 
if(sscanf(params , \"u\" ,skin)) SendClientMessage(playerid,ZÖLD,\"Használat:/ruhavesz [iD]\");
SetPlayerSkin(playerid,skin);
[pawn]if(sscanf(params, \"d\" ,skin)) return SendClientMessage(playerid, ZÖLD, \"Használat:/ruhavesz [iD]\");
SetPlayerSkin(playerid, skin);[/pawn]
 
[/quote]
Elnézést, még reggel volt. ;D
Én az \"i\" típust szoktam megadni.