Nun...also es soll nur eine Geldverwaltung geben?
Ja genau eine Globale Server-Geldverwaltung.
Ist halt ein Dynamisches System von mir, wo man alle geldvergaben usw. ingame einstellen und bearbeiten kann
Nun...also es soll nur eine Geldverwaltung geben?
Ja genau eine Globale Server-Geldverwaltung.
Ist halt ein Dynamisches System von mir, wo man alle geldvergaben usw. ingame einstellen und bearbeiten kann
Alles anzeigenAh fail..ja sry, hatte mir das nicht alles durchgelesen
So wie du das in deinem Skript hast..gibt es ja nur eine Geldverwaltung...
Ansonsten müsstest du ein 2 dimensionales Array erstellen und das über einen index regeln.
So kannste einfach eine feste id wie 0 der Spalte zuweisen und dann immer WHERE `id`=0 oder wenn es über den index geht, speicherst du den einfach mit ab und dann: WHERE `id`=%d",i
Ok das verstehe ich nur so halb
Könntest du mir das System evtl so bearbeiten, dass er es abspeichern würde? Und wie muss meine tabelle aussehen dann?
Da der Name von jedem Spieler auch eindeutig ist, kannst du auch WHERE `Name`='%s' machen
Oh tut mir leid, habe mich nicht ordentlich ausgedrückt..
Das ist eine globale Server Speicherung, nicht für den Spieler..
Edit: Achja, ja kla jetzt fällts mir auch ein.. muss ja nicht "p_id" verwenden, sondern kann auch den namen auslesen.. habe dich falsch verstanden
Hey,
mein System speichert nicht, ich weiß ich habe irgendwas fehlerhaftes, könnte mir das einer sagen was es ist?
Also Allgemein speichert man ja die Spieler mit p_id ab, jeder spieler hat in der DB seine eigene ID.. also macht man bei der query "WHERE id = '%d'...
Wie müsste ich das aber bei meinem System machen?:
enum Geldverwaltung
{
Jailcashcop,
Jailcashrobber,
ArrestGeldCop,
ArrestGeldRobber,
RobtotGeld
}
new Geld[Geldverwaltung];
ongamemodeinit:
LoadGeldverwaltung();
ongamemodeexit:
SaveGeldverwaltung();
und die stocks:
stock LoadGeldverwaltung()
{
Geld[Jailcashcop] = cache_get_field_content_int(0, "jailcashcop", handle);
Geld[Jailcashrobber] = cache_get_field_content_int(0, "jailcashrobber", handle);
Geld[ArrestGeldCop] = cache_get_field_content_int(0, "arrestgeldcop", handle);
Geld[ArrestGeldRobber] = cache_get_field_content_int(0, "arrestgeldrobber", handle);
Geld[RobtotGeld] = cache_get_field_content_int(0, "robtotgeld", handle);
return 1;
}
stock SaveGeldverwaltung()
{
new query[700];
mysql_format(handle, query,sizeof(query),"UPDATE geldverwaltung SET jailcashcop = '%d', jailcashrobber = '%d', arrestgeldcop = '%d', arrestgeldrobber = '%d', robtotgeld = '%d'",
Geld[Jailcashcop],
Geld[Jailcashrobber],
Geld[ArrestGeldCop],
Geld[ArrestGeldRobber],
Geld[RobtotGeld]);
mysql_pquery(handle, query);
return 1;
}
jmd eine Idee?
MfG
Hallo, es wird alles super angezeigt funktioniert auch.
so wen ich aber in ein Fahrzeug steige vom Script her zeigt er mir Tank: 0 an das das Auto leer ist. wen ich /motor eingebe ist der Tank tatsächlich leer.
Wen ich ein Fahrzeug ingame erstelle ist der Tank voll und wird auch gespeichert.
Komisch ist das nur die Fahrzeuge Leer sind die ihm Script drinnen sind.
Hey,
was du probieren kannst ist unter OngamemodeInit nachdem(!) deine fahrzeuge erstellt wurden den tank auf 100 mit einer for schleife zu setzen.
anschließend kannst du pro fahrzeug bei onvehiclespawn die richtigen liter setzen, wenn du verstehst was ich meine.
je nach dem wie dus haben willst.
mfg
Das:
Alles anzeigenif (strcmp("/stats", cmdtext, true, 10) == 0)
{
new String[128];
if(IsPlayerConnected(playerid))
{
format(String, sizeof(String), "Name: %s\nBargeld: %d$\nBankguthaben: %d$", sSpieler, Bargeld, Bankguthaben); //2617
ShowPlayerDialog(playerid, STATS, DIALOG_STYLE_MSGBOX, "Stats", String, "Okay", "");
}
return 1;
}
zu:
{
new String[128];
if(IsPlayerConnected(playerid))
{
format(String, sizeof(String), "Name: %s\nBargeld: %d$\nBankguthaben: %d$", SpielerName(playerid), sSpieler[playerid][Bargeld], sSpieler[playerid][Bankguthaben]); //2617
ShowPlayerDialog(playerid, STATS, DIALOG_STYLE_MSGBOX, "Stats", String, "Okay", "");
}
return 1;
}
Kenne ja deine Variabeln, so klappts :)
ShowPlayerMarkers(0); = Aus?
ShowPlayerMarkers(PLAYER_MARKERS_MODE_STREAMED); // Zeigt deine Umgebung
ShowPlayerMarkers(PLAYER_MARKERS_MODE_GLOBAL); // Zeigt alle Spieler
Danke hat funktioniert!
Danke dir, endlich hat es funktioniert! er printet durch bis "done"
es ging nach dem hier:
new vehicle = GetPlayerVehicleID(hitid);
zu das
new vehicle = hitid;
Danke dir!
schick mal pls wie du es gerade alls so nochmal hast damit ich aufm nesutens tand nochmal bin
if(copangeschossen[playerid] == 0)
{
if(hittype == BULLET_HIT_TYPE_VEHICLE)
{
new vehicle = GetPlayerVehicleID(hitid);
for(new a = 0; a < sizeof(lspdcar); a++)
{
if(hitid == lspdcar[a])return WantedGebenWegenBeschuss(playerid,vehicle);
print("a");
}
for(new b = 0; b < sizeof(sfpdcars); b++)
{
if(hitid== sfpdcars[b])return WantedGebenWegenBeschuss(playerid,vehicle);
print("b")
}
}
}
else { return 1; }
stock WantedGebenWegenBeschuss(playerid,vehicle)
{
for(new i; i < MAX_PLAYERS; i++)
{
if(Spieler[i][Fraktion] != 1)continue;
if(IsPlayerInVehicle(i, vehicle))
{
new string[128];
new AngriffaufBeamtenFahrzeug[128] = "Angriff auf ein Beamtenfahrzeug";
Spieler[playerid][Wanteds] += 1;
Spieler[playerid][WantedGrund] = AngriffaufBeamtenFahrzeug;
SetTimerEx("copangeschossentimer",1000*60*2,0,"i",playerid);
copangeschossen[playerid] = 1;
format(string,sizeof(string),"Verbrecher %s hat 1 Wanted erhalten, Verbrechen: Angriff auf ein Beamtenfahrzeug",SpielerName(playerid));
SCM(playerid,STEALTH_ORANGE,"Du hast ein 1 Wanted erhalten, Verbrechen: Angriff auf einen Beamtenfahrzeug");
SendFamilyMessage(1, STEALTH_ORANGE, string);
print("done");
return 1;
}
}
return 1;
}
was sagt nen Print?
Also er printet das bei onplayerweaponshot, weiter geht er nicht. sowohl wenn ich in einem cops als fahrer als auch beifahrer sitze..
dann lass mal printen bzw sitzt du denn in ein lspd oder sfpd car?
bzw wenn ein cop im normalen auto sitzt durchzufall als beifahrer kriegt der jenige der dann auf den wagen schiest keine wd?
Es passiert nichts, egal wie mans versucht. das ist komisch. Ich lass es mal gleich printen, mal gucken was kommt. ansonsten hast du andere ideen?
Also wenn du im Auto sitzt. und er dich anschießt, bekommt er keine Wanteds?
Aber wenn du nicht in einem Auto sitzt und er auf dich schießt, bekommt er welche?
Richtig. Mir gehts auch darum, dass wenn er das Auto an sich anschießt, dass er auch welche bekommt, mind 1. cop muss im auto sitzen.
MfG
Push
Der Text Label erstellt sich aber?
Garnichts,,,
Huhu, seit wann macht man zuerst public(); dann das forward? also zuerst forward mit ";" dann das public ohne ";"
forward Paydaycheck();
public Paydaycheck()
{ //3248
for(new i=0; i=<MAX_PLAYERS; i++) //3249
{
if(sSpieler[i][PaydayZeit] < 60) //3251
{
sSpieler[i][PaydayZeit] ++;
}
}
}
Hey,
habe bis jetzt das hier:
ShowPlayerMarkers(0);
for(new i=0; i<MAX_PLAYERS; i++)
{
for(new marker=0; marker<MAX_PLAYERS; marker++)
{
if(Spieler[i][Fraktion] == 1 && Spieler[marker][Fraktion] == 1)
{
SetPlayerMarkerForPlayer(i,marker,0xFF0000FF);
}
}
}
Leider wird nichts angezeigt ....
Jemand eine Idee?
Push
Hey,
mein Deathpickup erstellt sich einfach nicht..
hier mein komplettes system:
bei news:
new deathpickup[MAX_PLAYERS];
bei onplayerconnect:
deathpickup[playerid] = 999;
onplayerdeath:
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
new vworld = GetPlayerVirtualWorld(playerid);
new waffe, waffenname[32];
waffe = GetWeaponModelIDFromName(waffenname);
format(string,sizeof(string),"† %s †\nMörder: %s\n(%s)",SpielerName(playerid),SpielerName(killerid),aWeaponNames[waffe]);
Create3DTextLabel(string,COLOR_WHITE,x,y,z,10,vworld,0);
deathpickup[playerid] = CreatePickup(1254,1,x,y,z,vworld);
SetTimerEx("deathpickuptimer",1000*60*2,0,"i",playerid);
timer:
forward deathpickuptimer(playerid);
public deathpickuptimer(playerid)
{
DestroyPickup(deathpickup[playerid]);
}
Jemand eine Idee?
//Push