Beiträge von IPrototypeI
-
-
Was soll nun daran falsch sein die ini wird überschrieben und dafür wird noch eine backup datei erstellt
-
es kann gut daran liegen das elemente fehlen. Aber das ist schwer zu sagen das vio lit script besteht aus vielen teilen. tja grundlegend wenn man keine ahnung hat sollte man das lassen. ahja nur mal so zur info in jedem vio lite sind backdoor commands vorhanden.
-
also gehen tut das schon dafuer brauchst du ein eigenen client ein plugin und dazu noch die passende include sowas musst du jedoch alles selbst schreiben . das mit der veraenderung von der map wuerde auch gehen dazu muesstest du ein eigenen mod schreiben und das ist dazu sehr schwer . grundlegend ist alles moeglich nur das knowhow der leute ist beschraenkt
-
Was ich mich grundsätzlich Frage ist warum du genau hier Werbung macht du bist nur ein Mitglied dieses Forums , kein Supporter, Mod nix.
Warum machst du dann hier Werbung.
-
Grundlegend würde das schon gehen wie er es macht
nur braucht er eine extra variabel in seinem einem enum wo die art also welche gerichte das restaurant enthältdann lässt sich das ganze mit der variabel und einer forschleife wie oben in dem beispiel command auslesen.
also statt dem i hier und der forschleife eine feste variabel von dem enum
beispiel dann
for(new ex = 0; ex < MAX_GERICHTE; ex++)format(str, sizeof(str), "%s \t\tPreis: %d€\n", Gerichte[Restaurant[e][art]][ex][GName], Gerichte[Restaurant[e][art]
][ex][GPreis]); -
Naja die Funktion buggt mir ein bissle
Beispiel:
ocmd:test2(playerid,params[])
{
#pragma unused params
new string[20] = "Jens";
new Float:abc = 10.12;
new a1 = 1, b1 = 10, c1 = 12, d1= 31;
new Float:xy1 = 10.12;
new Float:xz1 = 10.12;
new string1[20] ="test";
new string2[20] ="test12";
SendClientMessagef(playerid,-1,"%s geht %f Kiometer weit und ist %d , %d , %d, %d, %f, %f, %s, %s",string,abc,a1,b1,c1,d1,xy1,xz1,string1,string2);
SendClientMessagef(playerid,-1,"%s geht %f Kiometer weit und ist %d , %d",string,abc,a1,b1);
return 1;
}Beweis bild:
Jedoch ist deine Funktion teilweise besser als die von Ryder im vergleich siehe Bild
die obere Version ist von Hauke die untere von Ryder -
Ok habe dann noch Dass hinzugefügt:
if(!strlen(Gerichte[e][ex][GName]))continue;/e
Ich weiß jetzt nicht ob der Server Crasht wenn ich einen String Abfrage der gar nicht existiert aber im Array ist.MFG Piet
Ich frage mich echt gerade was du damit genau bezwecken willst mit strlen bekommt du die länge des strings
und wenn es nicht der länge entspricht wird die for schleife weiter geführt
welchen Hintergedanke hast du dazu gehabt? -
Jo ich muss sagen BlackRider ist wirklich sehr nett und hilfsbereich ich kann die seite nur empfehlen nur zum Kaufen von stiles oder plugins auch als Support Forum
-
nö ich meinte das
new zinssatz=0.01;
-
Dann benutzt du wohl eine andere Version oder doch das Falsche plugin
-
nur als kleine Info 0.01 ist ein Dezimale und ist als Integer nicht möglich daher musst du eine Float nehme
-
es unterscheidet sich nicht viel der sscanf code bei mysql würde so aussehen
sscanf(Query, "p<|>e<ddddddddddddd>", Safebox[id]);
stock LoadSafeboxes()
{
new Query[1024], i = 0;
format(Query, sizeof(Query), "SELECT * FROM safebox");
mysql_query(Query);
mysql_store_result();
while(mysql_fetch_row_format(Query))
{
sscanf(Query, "p<|>e<ddddddddddddd>", Safebox[i]);
i++;
}
}was ist hier jetzt so umständlich
-
der code
for(new ex = 0; ex < sizeof(Gerichte[e]); ex++)
geht nicht daher ist es besser du setzt dafür einen wert für die speisen ein beispiel 5
dann gehts. soweit ich weiß kann man das nicht machen mit multidimensionale arrays
//edit das beispiel hasst du oben
#define MAX_SPEISEN 2
for(new ex = 0; ex < MAX_SPEISEN; ex++)
-
Müsstes du alles neu machen
bleib lieber so da mysql sehr aufwendig ist und man damit lieber von 0 anfängt
zb bei ein selfmadeSchwachsinn aufwendig wäre das nicht du kannst sscanf auch ganz leicht verwenden mit mysql .
Ein Beispiel aus meinem alten carsystem zeigt das
stock Autosladen()
{
new Query[1024], id, i = 0;
format(Query, sizeof(Query), "SELECT * FROM autos4");
mysql_query(Query);
mysql_store_result();
while(mysql_fetch_row_format(Query))
{
id = i;
sscanf(Query, "p<|>e<is[25]iiiffff>", VehicleInfo[id]);
new Color1 = random(126); new Color2 = random(126);
CreateVehicle(VehicleInfo[id][Model],VehicleInfo[id][Pos][X],VehicleInfo[id][Pos][Y],VehicleInfo[id][Pos][Z],VehicleInfo[id][Pos][R],Color1,Color2, 60*10000);
i++;
printf("%d",VehicleInfo[id][Model]);
}
}ich hätte dir ein beispiel posten können mit dem laden von deiner Box jedoch weiß ich nicht ob du ein die Variabeln in einem enum hast
obwohl das nichts groß zur Sache tut nur erspart das einem viele unnötige Zeilensscanf(Query, "p<|>e<is[25]iiiffff>", VehicleInfo[id]);
-
hm das komme ich jetzt auch
da sowas nix damit zu tun hat worum es gerade geht .
also ich weiß jetzt nicht was du mit derm posten deiner forschleife jetzt noch meinst aber eine idee die sachen auszulesen
wäre eine doppelte for schleife
#define MAX_LOKALE 2
#define MAX_SPEISEN 2
ocmd:test(playerid,params[])
{
#pragma unused params
for(new i; i < MAX_LOKALE; i++){
for(new ei; ei < MAX_SPEISEN; ei++){
new str[128];
format(str, sizeof(str), "%s \t\tPreis: %d€\n", Gerichte[i][ei][GName], Gerichte[i][ei][GPreis]);
SendClientMessage(playerid,-1,str);
}
}
return 1;
}wegen deinen gerichten um alles auszulesen naja das hat nun hier wenig mit dem unterschiedlichen Restaurants zu tun ich weiß jedoch wäre es eine idee
nur solltest du dann das erste hier i gehen die jeweilige Zahl ersetzen wenn der spieler den command eingibt um die speisen abzurufen.Aber nun zu dem Restaurant kannst du mir bitte das enum posten mit dem dazugehörigen array falls eins besteht.
//edit
Ah ok
auch gut ich hoffe ich hab dir trotzdem geholfen
-
müsste so klappen
enum renum_gerichte
{
GName[24],
GPreis,
Float:GHealth
};
new Gerichte[2][2][renum_gerichte] = {
{
{"Kleiner Burger", 7, 13.0},
{"Großer Burger", 16, 23.0}
},
{
{"Kleines Hühnchen", 9, 16.0},
{"Großes Hühnchen", 23, 31.0}
}
};ich editier das nochmal dumme frage
-
also ohne einen Clienten oder das der Spieler was downloaden muss geht es leider nicht
dazu bräuchtest du ein .txd datei in deinem gta ordner wo das enthältbeispiel wäre hier aufgeführt
http://www.samp-rus.com/load/fs_puzzle/4-1-0-3905
//Edit
dazu müsstest du ein Mod machen
dazu musst du auch die entsprechenden txd datein bearbeiten -
Eine grundlegende Frage willst du unterschiedliche restaurants machen oder sind das imm nur die selben.
weil da diese variante vollkommen ausreicht
new Gerichte[][renum_gerichte] = {
{"Kleiner Burger", 7, 13.0},
{"Großer Burger", 16, 23.0}},
{"Kleines Hühnchen", 9, 16.0},
{"Großes Hühnchen", 23, 31.0}
};grundlegend versteh ich immer noch nicht genau was du möchtest.
-
Grundsetzlich zu der Idee um SObeit zu detecten das wird bei den meisten Hacker-Noobs gehen aber nicht bei der Elite und die werden weiter Sachen releasen
um Samp kaputt zu machen ein beispiel ist das kleine Programm GoodPlayer von 0x688 damit kannst du den GRP client umgehen ohen probleme
und mann wird sowas niemals vermeiden können ohne ihrgend was illigales zu machen und auch dann wird es nicht möglich komplett von samp zu verbannen.