Szerző Téma: rSafe-Széf Rendszer v2  (Megtekintve 4098 alkalommal)

Nem elérhető gbr333

  • 670
    • Profil megtekintése
rSafe-Széf Rendszer v2
« Dátum: 2014. Augusztus 10. - 11:50:08 »
+9

\"Safe.png\"rSafe
 

Információk:
Készítõ:Rolux
Elkészítési idõ 1 óra
Sorok száma:238
Parancsok:
/ujszef  -  Létrehozol egy új széfet ((Csak rCon admin használhatja))
/szefnyit <jelszó>  -  Kinyitod a legközelebbi széfet((Ha jó a jelszó :d))
/szefzar  - Bezárod a széfet
/szefpenz  -  Megnézed a széfben lévõ pénzt
/szefbetesz <összeg>  -  Egy adott mennyiségû pénzt teszel a széfbe
/szefkivesz <összeg>  -  Egy adott mennyiségû pénzt veszel ki a széfbõl
Képek:
[hs width=300 height=300]http://kepfeltoltes.hu/140811/sa-mp-007_www.kepfeltoltes.hu_.png[/hs]
[hs width=300 height=300]http://kepfeltoltes.hu/140811/sa-mp-008_www.kepfeltoltes.hu_.png[/hs]
[hs width=300 height=300]http://kepfeltoltes.hu/140810/793808861sa-mp-005_www.kepfeltoltes.hu_.png[/hs]
Maga a kód:
http://data.hu/get/7953510/szefr.pwn
http://pastebin.com/z4V1bvk6
 
#include <a_samp>
#include <zcmd>
#include \"sscanf2\"
#include \"dini\"
#define MAX_SZEF 200
enum r_szef{
Float:szX,
Float:szY,
Float:szZ,
Float:szROT,
Pass[24],
Object,
Text3D:sztext,
Nyitva,
Frakcio,
Penz
}
new xfact[MAX_PLAYERS];
new xjelsz[MAX_PLAYERS][24];
new objectke[MAX_PLAYERS];
new szfile[128];
new szInfo[MAX_SZEF][r_szef];
new szefid;
CMD:ujszef(playerid,params[]){
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xff0000AA,\"»Nem vagy admin !\");
new szoveg[24],fid;
if(sscanf(params, \"s[24]d\",szoveg,fid)) return SendClientMessage(playerid,0xff0000AA,\"» Használat /újszéf » jelszó « » frakció id «\");
new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
objectke[playerid] = CreateObject(2332, x, y, z, 0.0, 0.0, 96.0);
     EditObject(playerid, objectke[playerid]);
format(xjelsz[playerid], 24, \"%s\", szoveg);
    SendClientMessage(playerid,0xff0000AA,\"» A kamera mozgatásához nyomd meg a SPACE gombot«\");
return 1;
}
CMD:szefpenz(playerid,params[])
{
for(new i; i < MAX_SZEF; i ++)
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, szInfo[szX], szInfo[szY], szInfo[szZ]))
{
if(szInfo[Nyitva] == 0) return SendClientMessage(playerid,0xff0000AA,\"» Elõször nyissd ki! \");
        //if(GetPVarInt(playerid,\"CurSafe\") != i) return SendClientMessage(playerid,0xff0000AA,\"» Elõször írd be a jelszót   » /szefjelszo «\");
new string[128];
format(string,sizeof(string),\"A széfben lévõ pénz: %d$\",szInfo[Penz]);
SendClientMessage(playerid,0xFFFFFFAA,string);
}
}
    return 1;
}
CMD:szefkivesz(playerid,params[])
{
new szoveg;
if(sscanf(params, \"d\",szoveg)) return SendClientMessage(playerid,0xff0000AA,\"» Használat /széfkivesz » összeg «\");
for(new i; i < MAX_SZEF; i ++)
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, szInfo[szX], szInfo[szY], szInfo[szZ]))
{
           
   if(szInfo[Nyitva] == 0) return SendClientMessage(playerid,0xff0000AA,\"» Elõször nyissd ki! \");
   //if(GetPVarInt(playerid,\"CurSafe\") != i) return SendClientMessage(playerid,0xff0000AA,\"» Elõször írd be a jelszót   » /szefjelszo «\");
   if(szInfo[Penz] < szoveg) return SendClientMessage(playerid,0xff0000AA,\"»Nincs ennyi pénz a széfben!\");
   if(szoveg < 1) return SendClientMessage(playerid,0xff0000AA,\"» Ne is próbálkozz !\");
   szInfo[Penz] -= szoveg;
            new string[128];
   format(string,sizeof(string),\"Sikeresen kivettél %d$-t\",szoveg);
   SendClientMessage(playerid,0xff0000AA,string);
   GivePlayerMoney(playerid,szoveg);
}
}
    return 1;
}
CMD:szefbetesz(playerid,params[])
{
new szoveg;
if(sscanf(params, \"d\",szoveg)) return SendClientMessage(playerid,0xff0000AA,\"» Használat /széfbetesz » összeg «\");
for(new i; i < MAX_SZEF; i ++)
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, szInfo[szX], szInfo[szY], szInfo[szZ]))
{
           
   if(szInfo[Nyitva] == 0) return SendClientMessage(playerid,0xff0000AA,\"» Elõször nyissd ki! \");
   //if(GetPVarInt(playerid,\"CurSafe\") != i) return SendClientMessage(playerid,0xff0000AA,\"» Elõször írd be a jelszót   » /szefjelszo «\");
   if(GetPlayerMoney(playerid) < szoveg) return SendClientMessage(playerid,0xff0000AA,\"» Nincs ennyi pénzed  !\");
   if(szoveg < 1) return SendClientMessage(playerid,0xff0000AA,\"» Ne is próbálkozz !\");
   szInfo[Penz] += szoveg;
            new string[128];
   format(string,sizeof(string),\"Sikeresen betettél %d$-t\",szoveg);
   SendClientMessage(playerid,0xff0000AA,string);
   GivePlayerMoney(playerid,-szoveg);
}
}
    return 1;
}
CMD:szefnyit(playerid,params[])
{
   
new szoveg[24];
if(sscanf(params, \"s[24]\",szoveg)) return SendClientMessage(playerid,0xff0000AA,\"» Használat /szefjelszo » jelszó «\");
for(new i; i < MAX_SZEF; i ++)
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, szInfo[szX], szInfo[szY], szInfo[szZ]))
{
           
   if(szInfo[Nyitva] == 1) return SendClientMessage(playerid,0xff0000AA,\"» Már ki van nyitva! \");
   if(!strcmp(szInfo[Pass],szoveg,false))
   {
   SendClientMessage(playerid,-1,\"» Sikeresen beírtad a jelszót!\");
   szInfo[Nyitva] = 1;
            Update3DTextLabelText(szInfo[sztext], 0x008080FF, \"Széf\\n{00ff3c}Nyitva\");
            DestroyObject(szInfo[Object] );
   szInfo[Object]   =  CreateObject(1829, szInfo[szX],szInfo[szY], szInfo[szZ], 0.0, 0.0, szInfo[szROT]);
   }else{
   SendClientMessage(playerid,-1,\"» Hibás jelszó !\");
   }
}
}
    return 1;
}
CMD:szefzar(playerid,params[])
{
   
for(new i; i < MAX_SZEF; i ++)
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, szInfo[szX], szInfo[szY], szInfo[szZ]))
{
   if(szInfo[Nyitva] == 0) return SendClientMessage(playerid,0xff0000AA,\"» Már be van zárva! \");
   SendClientMessage(playerid,-1,\"» Sikeresen bezártad a széfet!\");
   szInfo[Nyitva] = 0;
            Update3DTextLabelText(szInfo[sztext], 0x008080FF, \"Széf\\n{ff0000}Zárva\");
            DestroyObject(szInfo[Object] );
   szInfo[Object]   =  CreateObject(2332, szInfo[szX],szInfo[szY], szInfo[szZ], 0.0, 0.0, szInfo[szROT]);
}
}
    return 1;
}
public OnGameModeInit(){
for(new i; i < MAX_SZEF; i ++){
LoadSafe(i);
}
return 1;
}
public OnGameModeExit(){
    for(new i; i < MAX_SZEF; i ++){
    SaveSafe(i);
}
return 1;
}
public OnPlayerEditObject(playerid, playerobject, objectid, response, Float:fX, Float:fY, Float:fZ, Float:fRotX, Float:fRotY, Float:fRotZ)
{
if(response == EDIT_RESPONSE_FINAL)
{
CreateSzef(xjelsz[playerid],0,fX, fY, fZ,fRotZ,xfact[playerid]);
DestroyObject(objectke[playerid]);
xfact[playerid] = 0;
}
    if(response == EDIT_RESPONSE_UPDATE)
{
}
if(response == EDIT_RESPONSE_CANCEL)
{
DestroyObject(objectke[playerid]);
}
}
stock LoadSafe(xszefid)
{
format(szfile, sizeof(szfile), \"Szefek/%d.ini\", xszefid);
if(dini_Exists(szfile))
{
        szInfo[xszefid][Frakcio] =    dini_Int(szfile, \"Frakció\");
szInfo[xszefid][Penz] =    dini_Int(szfile, \"Tartalom\");
        szInfo[xszefid][Nyitva] =    dini_Int(szfile, \"Zár\");
    szInfo[xszefid][szX] =    dini_Float(szfile, \"X\");
    szInfo[xszefid][szY] =    dini_Float(szfile, \"Y\");
    szInfo[xszefid][szZ] =    dini_Float(szfile, \"Z\");
        szInfo[xszefid][szROT] = dini_Float(szfile, \"ROT\");
format(szInfo[xszefid][Pass], 24, \"%s\", dini_Get(szfile, \"jelszó\"));
 
if(szInfo[xszefid][Nyitva] == 0){
szInfo[xszefid][sztext]   =  Create3DTextLabel(\"Széf\\n{ff0000}Zárva\", 0x008080FF, szInfo[xszefid][szX],szInfo[xszefid][szY], szInfo[xszefid][szZ]+1, 40.0, 0, 0);
        szInfo[xszefid][Object]   =  CreateObject(2332, szInfo[xszefid][szX],szInfo[xszefid][szY], szInfo[xszefid][szZ], 0.0, 0.0, szInfo[xszefid][szROT]);
}else{
        szInfo[xszefid][sztext]   =  Create3DTextLabel(\"Széf\\n{00ff3c}Nyitva\", 0x008080FF, szInfo[xszefid][szX],szInfo[xszefid][szY], szInfo[xszefid][szZ]+1, 40.0, 0, 0);
        szInfo[xszefid][Object]   =  CreateObject(1829, szInfo[xszefid][szX],szInfo[xszefid][szY], szInfo[xszefid][szZ], 0.0, 0.0, szInfo[xszefid][szROT]);
}
szefid++;//
printf(\"%d széf betöltve\",xszefid);
}
}
stock SaveSafe(xszefid)
{
format(szfile, sizeof(szfile), \"Szefek/%d.ini\", xszefid);
if(dini_Exists(szfile))
{
        dini_IntSet(szfile,      \"Frakció\", szInfo[xszefid][Frakcio]);
dini_IntSet(szfile,      \"Zár\", szInfo[xszefid][Nyitva]);
dini_IntSet(szfile,      \"Tartalom\", szInfo[xszefid][Penz]);
dini_FloatSet(szfile,    \"X\", szInfo[xszefid][szX]);
dini_FloatSet(szfile,    \"Y\", szInfo[xszefid][szY]);
dini_FloatSet(szfile,    \"Z\", szInfo[xszefid][szZ]);
        dini_FloatSet(szfile,    \"ROT\", szInfo[xszefid][szROT]);
dini_Set(szfile,         \"Pass\", szInfo[xszefid][Pass]);
}
}
 
stock CreateSzef(jelsz[],xPenz,Float:X,Float:Y,Float:Z,Float:ROT,frakc)
{
szefid++;
format(szfile, sizeof(szfile), \"Szefek/%d.ini\", szefid);
dini_Create(szfile);
szInfo[szefid][Frakcio]  =  frakc;
szInfo[szefid][Nyitva]   =  0;
szInfo[szefid][szX]     =    X;
szInfo[szefid][szY]     =   Y;
szInfo[szefid][szZ]     =   Z;
szInfo[szefid][szROT]    =   ROT;
szInfo[szefid][Penz]     =  xPenz;
szInfo[szefid][Object]   =  CreateObject(2332, X, Y, Z, 0.0, 0.0, ROT);
szInfo[szefid][sztext]   =  Create3DTextLabel(\"Széf\\n{ff0000}Zárva\", 0x008080FF, X, Y, Z+2, 40.0, 0, 0);
format(szInfo[szefid][Pass], 24, \"%s\", jelsz);
SaveSafe(szefid);
}

 
Fontos:
A scriptfiles mappába létre kell hozni egy Szefek - nevû mappát.
A nevem feltüntetése kötelezõ!
« Utoljára szerkesztve: 2014. Augusztus 11. - 11:00:35 írta RoLuX »

rSafe-Széf Rendszer v2
« Válasz #1 Dátum: 2014. Augusztus 10. - 12:42:24 »
0
Nagyon fasza lett! Köszi! :)

rSafe-Széf Rendszer v2
« Válasz #2 Dátum: 2014. Augusztus 10. - 12:55:56 »
0
Szép munka RoLuX!  ;)

rSafe-Széf Rendszer v2
« Válasz #3 Dátum: 2014. Augusztus 10. - 13:02:49 »
+1
Téged is megihletett a segítség kérõ fórum?:D Én is akartam ilyen rendszert csinálni, de lusta voltam  ::| :D

Nem elérhető gbr333

  • 670
    • Profil megtekintése
rSafe-Széf Rendszer v2
« Válasz #4 Dátum: 2014. Augusztus 10. - 13:27:19 »
0
Idézetet írta: Jim Toretto date=1407667344\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"49982\" data-ipsquote-contentclass=\"forums_Topic
Nagyon f***a lett! Köszi! :)
 


Szép munka RoLuX!  ;)[/quote]
Köszönöm :D
 

Téged is megihletett a segítség kérõ fórum?:D Én is akartam ilyen rendszert csinálni, de lusta voltam  ::| :D
 
[/quote]
Szeretek segíteni  :angel:

rSafe-Széf Rendszer v2
« Válasz #5 Dátum: 2014. Augusztus 10. - 21:51:00 »
0
Sziasztok nekem lenne egy olyan kérdésem hogy hova kell betenni a xd.pwn-t ??

rSafe-Széf Rendszer v2
« Válasz #6 Dátum: 2014. Augusztus 11. - 08:10:06 »
0
Idézetet írta: Sallai date=1407700260\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"49982\" data-ipsquote-contentclass=\"forums_Topic
Sziasztok nekem lenne egy olyan kérdésem hogy hova kell betenni a xd.pwn-t ??
 
Lekonvertálod, majd az amxet beteszed a Filterscripts -hez, majd a server.cfg-be a filterscripts nél odaírod hogy \"xd\" idézõjelek nélkül.

rSafe-Széf Rendszer v2
« Válasz #7 Dátum: 2014. Augusztus 11. - 10:03:24 »
0
Egyszerû, mégis hasznos! Amikor én írtam széf rendszert, akkor úgy csináltam meg, hogyha kinyitod a széfet a nyitott széf object van lerakva, ha becsukod akkor a zárt. Elég jól néz ki úgy! :)
Egyébként szép munka, ment a +!

Nem elérhető ROOCK

  • 183
    • Profil megtekintése
rSafe-Széf Rendszer v2
« Válasz #8 Dátum: 2014. Augusztus 11. - 10:15:04 »
0
ugyan ezt csináltam meg xD volt egy kérdezõ és tõle másképp de ugyan ezt tudja xD

Nem elérhető gbr333

  • 670
    • Profil megtekintése
rSafe-Széf Rendszer v2
« Válasz #9 Dátum: 2014. Augusztus 11. - 10:34:45 »
0
Idézetet írta: ShaadY date=1407744204\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"49982\" data-ipsquote-contentclass=\"forums_Topic
Egyszerû, mégis hasznos! Amikor én írtam széf rendszert, akkor úgy csináltam meg, hogyha kinyitod a széfet a nyitott széf object van lerakva, ha becsukod akkor a zárt. Elég jól néz ki úgy! :)
Egyébként szép munka, ment a +!
 
Köszi!
v2.kész
« Utoljára szerkesztve: 2014. Augusztus 11. - 10:57:38 írta RoLuX »

rSafe-Széf Rendszer v2
« Válasz #10 Dátum: 2014. Augusztus 11. - 13:31:04 »
0
Oké azt értem de nekem nem akarja lekonvertálni :( :(

Nem elérhető gbr333

  • 670
    • Profil megtekintése
rSafe-Széf Rendszer v2
« Válasz #11 Dátum: 2014. Augusztus 11. - 13:57:41 »
0
Idézetet írta: Sallai date=1407756664\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"49982\" data-ipsquote-contentclass=\"forums_Topic
Oké azt értem de nekem nem akarja lekonvertálni :( :(
 
kell hozzá :
zcmd
sscanf2
és
dini

Nem elérhető Mate.

  • 223
  • Advertising Designer. Video Editor. Ex-Mapper.
    • Profil megtekintése
rSafe-Széf Rendszer v2
« Válasz #12 Dátum: 2014. Augusztus 11. - 19:15:44 »
0
Nekem tetszik. \" + \"

Nem elérhető gbr333

  • 670
    • Profil megtekintése
rSafe-Széf Rendszer v2
« Válasz #13 Dátum: 2014. Augusztus 11. - 19:28:03 »
0
RTM[Mate\" post=510054\" timestamp=\"1407777344]
Nekem tetszik. \" + \"
 
[/quote]
Köszönöm!

Nem elérhető ROOCK

  • 183
    • Profil megtekintése
rSafe-Széf Rendszer v2
« Válasz #14 Dátum: 2014. Augusztus 12. - 01:35:51 »
0
és ha egymás mellet van 2 széf akkor nem bugol?(kinyitáskor) vagy mindig a legközelebbit nyitja ki?

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal