Szerző Téma: Banda Széf  (Megtekintve 1547 alkalommal)

Banda Széf
« Dátum: 2012. március 09. - 22:45:10 »
0 Show voters
Sziasztok!Van egy rendõr szerverem,de elakadtam egy dolognál :S
Nem tudom hogy kéne csinálni egy bandaszéfet,vagy is lehetne bele pénzt rakni.
Csak ennyi,de nem tom le vook blokkolva.
Válaszokat elõre is köszönöm sziasztok!

Nem elérhető CANNONN

  • 2139
    • Profil megtekintése
Banda Széf
« Válasz #1 Dátum: 2012. március 09. - 22:50:50 »
0 Show voters
Úgy szeretnéd, hogy amikor a szerver leáll elmentse az összeget, ami a bandaszéfben van?

Banda Széf
« Válasz #2 Dátum: 2012. március 09. - 23:07:15 »
0 Show voters
Idézetet írta: Cannonn date=1331329850\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"18217\" data-ipsquote-contentclass=\"forums_Topic
Úgy szeretnéd, hogy amikor a szerver leáll elmentse az összeget, ami a bandaszéfben van?
 
aham :)
tudom nagyon egyszerû,ed néha ezek is kifognak rajtam :S

Nem elérhető CANNONN

  • 2139
    • Profil megtekintése
Banda Széf
« Válasz #3 Dátum: 2012. március 09. - 23:17:54 »
+1 Show voters
Nem vagyok benne biztos, hogy mûködik, sajnos pawno nélküli gépen vagyok.
 

#include a_samp
#include zcmd
#include sscanf
#include dini
new szefosszeg;
#define szefpozicio x, y, z
CMD:berak(playerid, params[])
{
if(sscanf(params, \"d\", osszeg)) return SendClientMessage(playerid, 0xff0000AA, \"Használat: /berak [összeg]\" );
if(!IsPlayerInRangeOfPoint(playerid, 7.0, szefpozicio)) return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy a széfnél.\" );
szefosszeg = szefosszeg+osszeg;
GivePlayerMoney(playerid, -osszeg);
return  1;
}
CMD:kivesz(playerid, params[])
{
if(sscanf(params, \"d\", osszeg)) return SendClientMessage(playerid, 0xff0000AA, \"Használat: /kivesz [összeg]\" );
if(!IsPlayerInRangeOfPoint(playerid, 7.0, szefpozicio)) return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy a széfnél.\" );
if(osszeg > szefosszeg) return SendClientMessage(playerid, 0xff0000AA, \"Nincs ennyi pénz a széfben.\" );
szefosszeg = szefosszeg-osszeg;
GivePlayerMoney(playerid, osszeg);
return  1;
}
CMD:szef(playerid, params[])
{
if(!IsPlayerInRangeOfPoint(playerid, 7.0, szefpozicio)) return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy a széfnél.\" );
new string[200];
format(string, sizeof(string),\"A széfben lévõ pénz összege: %d\", szefosszeg);
return  1;
}
public OnGameModeInit()
{
if(dini_Exists(\"szef.ini\")
{
szefosszeg = dini_Int(\"szef.ini\",\"Penz\");
}else { dini_Create(\"szef.ini\") }
return 1;
}
public OnGameModeExit()
{
dini_IntSet(\"szef.ini\",\"Penz\", szefosszeg);
return 1;
}
« Utoljára szerkesztve: 2012. március 10. - 00:22:21 írta Cannonn »

Banda Széf
« Válasz #4 Dátum: 2012. március 09. - 23:20:52 »
0 Show voters
Idézetet írta: Cannonn date=1331331474\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"18217\" data-ipsquote-contentclass=\"forums_Topic
Nem vagyok benne biztos, hogy mûködik, sajnos pawno nélküli gépen vagyok.
 

#include a_samp
#include zcmd
#include sscanf
#include dini
new szefosszeg;
CMD:berak(playerid, params[])
{
if(sscanf(params, \"d\", osszeg) return SendClientMessage(playerid, 0xff0000AA, \"Használat: /berak [összeg]\" );
szefosszeg = szefosszeg+osszeg;
GivePlayerMoney(playerid, -osszeg);
return  1;
}
CMD:kivesz(playerid, params[])
{
if(sscanf(params, \"d\", osszeg) return SendClientMessage(playerid, 0xff0000AA, \"Használat: /kivesz [összeg]\" );
szefosszeg = szefosszeg-osszeg;
GivePlayerMoney(playerid, osszeg);
return  1;
}
 
CMD:szef(playerid, params[])
{
new string[200];
format(string, sizeof(string),\"A széfben lévõ pénz összege: %d\", szefosszeg);
return  1;
}
public OnGameModeInit()
{
szefosszeg = dini_Int(\"szef.ini\",\"Penz\");
return 1;
}
public OnGameModeExit()
{
dini_IntSet(\"szef.ini\",\"Penz\", szefosszeg);
return 1;
}

 

és nem kell pozíció sehova sem? O.o

Nem elérhető CANNONN

  • 2139
    • Profil megtekintése
Banda Széf
« Válasz #5 Dátum: 2012. március 09. - 23:29:39 »
0 Show voters
Olyat nem írtál. Azt szûrtem csak le, hogy kell egy be-ki rakó parancs és egy egyenleglekérõ.
Ha írsz bõvebb infót, megcsinálom.
E: Bõvítettem. A file létrehozást kihagytam.
« Utoljára szerkesztve: 2012. március 09. - 23:41:49 írta Cannonn »

Banda Széf
« Válasz #6 Dátum: 2012. március 09. - 23:50:17 »
0 Show voters
Idézetet írta: Cannonn date=1331332179\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"18217\" data-ipsquote-contentclass=\"forums_Topic
Olyat nem írtál. Azt szûrtem csak le, hogy kell egy be-ki rakó parancs és egy egyenleglekérõ.
Ha írsz bõvebb infót, megcsinálom.
E: Bõvítettem. A file létrehozást kihagytam.
 
Akkor leírom mit szeretnék..egy pozícióra kéne rakni egy széfet,ami szerver kikapcsolásnál menti.Berakni,kivenni,és egyenleget lekérni lehetne.Elõre is köszi :)

Nem elérhető CANNONN

  • 2139
    • Profil megtekintése
Banda Széf
« Válasz #7 Dátum: 2012. március 09. - 23:57:44 »
+1 Show voters
#define szefpozicio x, y, z
A pirossal jelölt koordinátákat írd át arra, hol szeretnéd, hogy használni tudjuk a széfet.
 
#include a_samp
#include zcmd
#include sscanf
#include dini
new szefosszeg;
#define szefpozicio x, y, z
CMD:berak(playerid, params[])
{
if(sscanf(params, \"d\", osszeg)) return SendClientMessage(playerid, 0xff0000AA, \"Használat: /berak [összeg]\" );
if(!IsPlayerInRangeOfPoint(playerid, 7.0, szefpozicio)) return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy a széfnél.\" );
szefosszeg += osszeg;
GivePlayerMoney(playerid, -osszeg);
return  1;
}
CMD:kivesz(playerid, params[])
{
if(sscanf(params, \"d\", osszeg)) return SendClientMessage(playerid, 0xff0000AA, \"Használat: /kivesz [összeg]\" );
if(!IsPlayerInRangeOfPoint(playerid, 7.0, szefpozicio)) return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy a széfnél.\" );
if(osszeg > szefosszeg) return SendClientMessage(playerid, 0xff0000AA, \"Nincs ennyi pénz a széfben.\" );
szefosszeg -= osszeg;
GivePlayerMoney(playerid, osszeg);
return  1;
}
CMD:szef(playerid, params[])
{
if(!IsPlayerInRangeOfPoint(playerid, 7.0, szefpozicio)) return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy a széfnél.\" );
new string[200];
format(string, sizeof(string),\"A széfben lévõ pénz összege: %d\", szefosszeg);
return  1;
}
public OnGameModeInit()
{
if(dini_Exists(\"szef.ini\")
{
szefosszeg = dini_Int(\"szef.ini\",\"Penz\");
}else { dini_Create(\"szef.ini\") }
return 1;
}
public OnGameModeExit()
{
dini_IntSet(\"szef.ini\",\"Penz\", szefosszeg);
return 1;
}
« Utoljára szerkesztve: 2012. március 10. - 00:25:47 írta Cannonn »

Nem elérhető Casamiro

  • 1046
    • Profil megtekintése
Banda Széf
« Válasz #8 Dátum: 2012. március 10. - 00:16:24 »
+1 Show voters
Kicsit pontosabban, meg sscanfnál lemaradtak a zárójelek, javítottam:
 
#include a_samp
#include zcmd
#include sscanf2
#include dini
new szefosszeg;
#define szefpozicio x, y, z
CMD:berak(playerid, params[])
{
if(sscanf(params, \"d\", osszeg)) return SendClientMessage(playerid, 0xff0000AA, \"Használat: /berak [összeg]\" );
if(!IsPlayerInRangeOfPoint(playerid, 7.0, szefpozicio)) return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy a széfnél.\" );
szefosszeg += osszeg;
GivePlayerMoney(playerid, -osszeg);
return  1;
}
CMD:kivesz(playerid, params[])
{
if(sscanf(params, \"d\", osszeg)) return SendClientMessage(playerid, 0xff0000AA, \"Használat: /kivesz [összeg]\" );
if(!IsPlayerInRangeOfPoint(playerid, 7.0, szefpozicio)) return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy a széfnél.\" );
if(osszeg > szefosszeg) return SendClientMessage(playerid, 0xff0000AA, \"Nincs ennyi pénz a széfben.\" );
szefosszeg -= osszeg;
GivePlayerMoney(playerid, osszeg);
return  1;
}
CMD:szef(playerid, params[])
{
if(!IsPlayerInRangeOfPoint(playerid, 7.0, szefpozicio)) return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy a széfnél.\" );
new string[64];
format(string, sizeof(string),\"A széfben lévõ pénz összege: %d\", szefosszeg);
return  1;
}
public OnGameModeInit()
{
if(dini_Exists(\"szef.ini\")
{
szefosszeg = dini_Int(\"szef.ini\",\"Penz\");
}else { dini_Create(\"szef.ini\") }
return 1;
}
public OnGameModeExit()
{
dini_IntSet(\"szef.ini\",\"Penz\", szefosszeg);
return 1;
}

sscanf nélkül is megoldható mivel csak egy paraméter van, elég lenne a params tömb:
#include a_samp
#include zcmd
#include dini
new szefosszeg;
#define szefpozicio x, y, z
CMD:berak(playerid, params[])
{
if(isnull(params)) return SendClientMessage(playerid, 0xff0000AA, \"Használat: /berak [összeg]\" );
if(!IsPlayerInRangeOfPoint(playerid, 7.0, szefpozicio)) return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy a széfnél.\" );
szefosszeg += strval(params);
GivePlayerMoney(playerid, strval(params));
return  1;
}
CMD:kivesz(playerid, params[])
{
if(isnull(params)) return SendClientMessage(playerid, 0xff0000AA, \"Használat: /kivesz [összeg]\" );
if(!IsPlayerInRangeOfPoint(playerid, 7.0, szefpozicio)) return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy a széfnél.\" );
if(osszeg > szefosszeg) return SendClientMessage(playerid, 0xff0000AA, \"Nincs ennyi pénz a széfben.\" );
szefosszeg -= strval(params);
GivePlayerMoney(playerid, strval(params));
return  1;
}
CMD:szef(playerid, params[])
{
if(!IsPlayerInRangeOfPoint(playerid, 7.0, szefpozicio)) return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy a széfnél.\" );
new string[64];
format(string, sizeof(string),\"A széfben lévõ pénz összege: %d\", szefosszeg);
return  1;
}
public OnGameModeInit()
{
if(dini_Exists(\"szef.ini\")
{
szefosszeg = dini_Int(\"szef.ini\",\"Penz\");
}else { dini_Create(\"szef.ini\") }
return 1;
}
public OnGameModeExit()
{
dini_IntSet(\"szef.ini\",\"Penz\", szefosszeg);
return 1;
}
« Utoljára szerkesztve: 2012. március 10. - 00:18:24 írta Casamiro »

Banda Széf
« Válasz #9 Dátum: 2012. március 10. - 00:29:09 »
0 Show voters
C:\\server1\\filterscripts\\széf.pwn(10) : error 001: expected token: \";\", but found \"forward\"
C:\\server1\\filterscripts\\széf.pwn(14) : warning 202: number of arguments does not match definition
C:\\server1\\filterscripts\\széf.pwn(14) : error 029: invalid expression, assumed zero
C:\\server1\\filterscripts\\széf.pwn(25) : warning 202: number of arguments does not match definition
C:\\server1\\filterscripts\\széf.pwn(25) : error 029: invalid expression, assumed zero
C:\\server1\\filterscripts\\széf.pwn(26) : error 001: expected token: \")\", but found \"return\"
C:\\server1\\filterscripts\\széf.pwn(35) : warning 202: number of arguments does not match definition
C:\\server1\\filterscripts\\széf.pwn(35) : error 029: invalid expression, assumed zero
C:\\server1\\filterscripts\\széf.pwn(36) : error 001: expected token: \")\", but found \"return\"
C:\\server1\\filterscripts\\széf.pwn(45) : error 001: expected token: \")\", but found \"{\"
C:\\server1\\filterscripts\\széf.pwn(47) : error 001: expected token: \";\", but found \"}\"
Pawn compiler 3.2.3664           Copyright © 1997-2006, ITB CompuPhase
8 Errors.
:SSS

Nem elérhető CANNONN

  • 2139
    • Profil megtekintése
Banda Széf
« Válasz #10 Dátum: 2012. március 10. - 00:30:58 »
0 Show voters
Ott valamit nem zártál le, szerintem.
Másold be a hibás sorokat.

Banda Széf
« Válasz #11 Dátum: 2012. március 10. - 00:38:53 »
0 Show voters
Idézetet írta: Cannonn date=1331335858\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"18217\" data-ipsquote-contentclass=\"forums_Topic
Ott valamit nem zártál le, szerintem.
Másold be a hibás sorokat.
 
C:\\server1\\filterscripts\\széf.pwn(12) : warning 202: number of arguments does not match definition
C:\\server1\\filterscripts\\széf.pwn(21) : warning 202: number of arguments does not match definition
C:\\server1\\filterscripts\\széf.pwn(22) : error 017: undefined symbol \"osszeg\"
C:\\server1\\filterscripts\\széf.pwn(30) : warning 202: number of arguments does not match definition
C:\\server1\\filterscripts\\széf.pwn(39) : error 001: expected token: \")\", but found \"{\"
C:\\server1\\filterscripts\\széf.pwn(41) : error 001: expected token: \";\", but found \"}\"
Pawn compiler 3.2.3664           Copyright © 1997-2006, ITB CompuPhase
3 Errors.
És a sorok:
12.:    if(!IsPlayerInRangeOfPoint(playerid, 7.0, -2139.2334,-241.2799,36.5156,326.8825)) return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy a széfnél.\" );
21.:    if(!IsPlayerInRangeOfPoint(playerid, 7.0, -2139.2334,-241.2799,36.5156,326.8825)) return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy a széfnél.\" );
22.:      if(osszeg > szefosszeg) return SendClientMessage(playerid, 0xff0000AA, \"Nincs ennyi pénz a széfben.\" );
30.:     if(!IsPlayerInRangeOfPoint(playerid, 7.0, -2139.2334,-241.2799,36.5156,326.8825)) return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy a széfnél.\" );
És ebbõl a szakaszból,a 39.,és a 40.
if(dini_Exists(\"szef.ini\")
39.:   {
szefosszeg = dini_Int(\"szef.ini\",\"Penz\");
41.:    }else { dini_Create(\"szef.ini\") }
return 1;
}
public OnGameModeExit()
{
dini_IntSet(\"szef.ini\",\"Penz\", szefosszeg);
return 1;
}

Nem elérhető CANNONN

  • 2139
    • Profil megtekintése
Banda Széf
« Válasz #12 Dátum: 2012. március 10. - 00:44:54 »
+1 Show voters
12:  if(!IsPlayerInRangeOfPoint(playerid, 7.0, -2139.2334,-241.2799,36.5156)) return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy a széfnél.\" );
21:  if(!IsPlayerInRangeOfPoint(playerid, 7.0, -2139.2334,-241.2799,36.5156)) return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy a széfnél.\" );
Amúgy elég csak az elején definiálni.
22: Ha az én verziómat használod, akkor nem hibás.
30:  if(!IsPlayerInRangeOfPoint(playerid, 7.0, -2139.2334,-241.2799,36.5156)) return SendClientMessage(playerid, 0xff0000AA, \"Nem vagy a széfnél.\" );

Banda Széf
« Válasz #13 Dátum: 2012. március 10. - 00:48:08 »
0 Show voters
42.:      }else { dini_Create(\"szef.ini\") }
40.:      {

Nem elérhető CANNONN

  • 2139
    • Profil megtekintése
Banda Széf
« Válasz #14 Dátum: 2012. március 10. - 00:55:08 »
0 Show voters

public OnGameModeInit()
{
if(dini_Exists(\"szef.ini\"))
{
szefosszeg = dini_Int(\"szef.ini\",\"Penz\");
}
else
{
dini_Create(\"szef.ini\");
}
return 1;
}

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal