-
Sziasztok!
Csináltam egy GangZone-s terület mentéses betöltéses cuccot! De nem nagyon akkor mûködni!
Betöltés/Mentés:
stock TeruletMent(THID)
{
format(File, sizeof(File), \"Teruletek/%d.ini\", THID);
if(dini_Exists(File))
{
dini_IntSet(File, \"Tulaj\", TeruletInfo[THID][Tulaj]);
dini_FloatSet(File, \"Szin\", TeruletInfo[THID][szin]);
dini_IntSet(File, \"Kész\", TeruletInfo[THID][Kesz]);
dini_IntSet(File, \"MelyikTerulet\", TeruletInfo[THID][Melyik]);
}
}
stock TeruletBetolt(THID)
{
format(File, sizeof(File), \"Teruletek/%d.ini\", THID);
if(dini_Exists(File))
{
TeruletInfo[THID][Tulaj] = dini_Int(File, \"Tulaj\");
TeruletInfo[THID][Kesz] = dini_Int(File, \"Kész\");
TeruletInfo[THID][Melyik] = dini_Int(File, \"MelyikTerulet\");
format(TeruletInfo[THID][szin], 24, \"%s\", dini_Get(File, \"Szin\"));
format(TeruletInfo[THID][Tulaj], 24, \"%s\", dini_Get(File, \"Tulaj\"));
if(TeruletInfo[THID][Melyik] == 1)
{
Terulet1 = GangZoneCreate(172.4781, -222.0213, 18.2262, -345.6265);
}
}
}
Be írom a dini fájlt meg mindent:
Tulaj=Nincs
Szin=0x000000AA
MelyikTerulet=1
Kész=1
[/quote]
És ha le állítom a szervert az az lefut a mentés ez lesz belõle:
Tulaj=78
Szin=48.000000
MelyikTerulet=48
Kész=48
[/quote]
Remélem bírtok segíteni!
Enum része:
enum teAdat
{
Tulaj[24],
Szin,
Harcvan,
Melyik,
Kesz
};
new TeruletInfo[MAX_TERULET][teAdat];
-
Hali.
- A színt máskor string formátumba :)
- dini_IntSet: Egész számok elmentése...... dini_FloatSet: Lebegõpontos értékek elmentése
enum teAdat
{
Tulaj[MAX_PLAYER_NAME],
Szin[64],
Harcvan,
Melyik,
Kesz
};
new TeruletInfo[MAX_TERULET][teAdat];
stock TeruletMent(THID)
{
format(File, sizeof(File), \"Teruletek/%d.ini\", THID);
if(dini_Exists(File))
{
dini_Set(File, \"Tulaj\", TeruletInfo[THID][Tulaj]);
dini_Set(File, \"Szin\", TeruletInfo[THID][szin]);
dini_IntSet(File, \"Kész\", TeruletInfo[THID][Kesz]);
dini_IntSet(File, \"MelyikTerulet\", TeruletInfo[THID][Melyik]);
}
}
stock TeruletBetolt(THID)
{
format(File, sizeof(File), \"Teruletek/%d.ini\", THID);
if(dini_Exists(File))
{
TeruletInfo[THID][Tulaj] = dini_Int(File, \"Tulaj\");
TeruletInfo[THID][Kesz] = dini_Int(File, \"Kész\");
TeruletInfo[THID][Melyik] = dini_Int(File, \"MelyikTerulet\");
format(TeruletInfo[THID][szin], 64, \"%s\", dini_Get(File, \"Szin\"));
format(TeruletInfo[THID][Tulaj], MAX_PLAYER_NAME, \"%s\", dini_Get(File, \"Tulaj\"));
if(TeruletInfo[THID][Melyik] == 1)
{
Terulet1 = GangZoneCreate(172.4781, -222.0213, 18.2262, -345.6265);
}
}
}
-
Ohh köszi! Mentés mükszik!
De valahogy nem látom a zónát :S XD Lehet a színt rosszul állítom be? Vagy mi?
Kérem HELP!
Vagy rosz helyen hozom létre a Zonát?
Szin beállítás:
for(new i; i < MAX_TERULET; i++)
{
GangZoneShowForPlayer(playerid, Terulet1, TeruletInfo[szin]);
}
[/quote]
GangZone létrehozás:
stock TeruletBetolt(THID)
{
format(File, sizeof(File), \"Teruletek/%d.ini\", THID);
if(dini_Exists(File))
{
//TeruletInfo[THID][Tulaj] = dini_Int(File, \"Tulaj\");
TeruletInfo[THID][szin] = dini_Int(File, \"Szin\");
TeruletInfo[THID][Kesz] = dini_Int(File, \"Kész\");
TeruletInfo[THID][Melyik] = dini_Int(File, \"MelyikTerulet\");
format(TeruletInfo[THID][szin], 64, \"%s\", dini_Get(File, \"Szin\"));
format(TeruletInfo[THID][Tulaj], 24, \"%s\", dini_Get(File, \"Tulaj\"));
if(TeruletInfo[THID][Melyik] == 1)
{
Terulet1 = GangZoneCreate(172.4781, -222.0213, 18.2262, -345.6265);
}
}
}
[/quote]
-
Hát õõ nemtudom hogy jó lesz e :O
new string[128];
format(string,sizeof(string),\"%s\",TeruletInfo[szin]);
for(new i; i < MAX_TERULET; i++)
{
GangZoneShowForPlayer(playerid, Terulet1, string);
}
-
Error! XD
C:\\Users\\Tedd\\Desktop\\ \\SAMP\\WeeLife.pwn(1305) : error 032: array index out of bounds (variable \"TeruletInfo\")
C:\\Users\\Tedd\\Desktop\\ \\SAMP\\WeeLife.pwn(1308) : error 035: argument type mismatch (argument 3)
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
2 Errors.
[/quote]
Sor:
new teruletsz[128];
format(teruletsz,sizeof(teruletsz),\"%s\", TeruletInfo[szin]);
for(new i; i < MAX_TERULET; i++)
{
GangZoneShowForPlayer(playerid, Terulet1, teruletsz);
}
-
ezt:
TeruletInfo[szin]
erre:
TeruletInfo[MAX_TERULET][szin]
És felesleges a 128 as string.
összegezve:
new teruletsz[48];
format(teruletsz,sizeof(teruletsz),\"%s\", TeruletInfo[MAX_TERULET][szin]);
for(new i; i < MAX_TERULET; i++) GangZoneShowForPlayer(playerid, Terulet1, teruletsz);
-
UGYAN az a hiba! Semmi nem változott!
Dupla hozzászólás automatikusan összefûzve. ( 2013. szeptember 17. - 20:42:16 )
Ti hogy hoznátok létre? És hogy adnátok neki szint? Ha meg kérdezhetem!