Hab es nun mit "OnPropUpdate();" und "Update3DTextLabelText" gelöst. Durch "OnPropUpdate();" wird der neue wert mir in die .cfg gespeichert und durch "Update3DTextLabelText" wird der Label ingame aktualisiert.
Ich danke Lenox bei der Lösung
Hab es nun mit "OnPropUpdate();" und "Update3DTextLabelText" gelöst. Durch "OnPropUpdate();" wird der neue wert mir in die .cfg gespeichert und durch "Update3DTextLabelText" wird der Label ingame aktualisiert.
Ich danke Lenox bei der Lösung
Laut printf zieht er die Produkte ab, speichert es aber dann nicht in die .cfg
@ Lennox in wie fern gespeichert ?
@ Piet Meier
Also ein script anfänger bin ich auch nicht mehr
Und auch wenn ich mich mit der Array vertan hätte, hätte ich es spätestens in der .cfg gesehen das es beim anderen sBiz abgezogen hat was jedoch nicht der fall ist.
Ich hab es jetzt auch mal so probiert:
SBizzInfo[1][sbProducts] -= 10;
und dennoch wird nichts abgezogen
Die index zahl stimmt auch ...
Hallo liebe Community,
ich verstehe nicht warum bei meinem sBizz die Produkte nicht abgezogen werden.
SBizzInfo[1][sbProducts] -= FillUp;
Der Code müsste richtig sein aber dennoch wird nichts abgezogen...
Kann mir da einer helfen ?
stock Headshot_ErmittleZielperson(playerid)
{
if(PlayerInfo[playerid][pMember] == 10 || PlayerInfo[playerid][pLeader] == 10)
{
new Float:x,Float:y,Float:z,Float:FrontX,Float:FrontY,Float:FrontZ,Float:CamX,Float:CamY,Float:CamZ;
GetPlayerCameraFrontVector(playerid, FrontX, FrontY, FrontZ);
GetPlayerCameraPos(playerid, CamX, CamY, CamZ);
for(new Float:i = 0.0; i < 100; i = i + 0.5) {
x = FrontX * i + CamX; y = FrontY * i + CamY; z = FrontZ * i + CamZ;
for(new zielperson = 0; zielperson < MAX_PLAYERS; zielperson ++) {
if(!IsPlayerNPC(zielperson) && !IsPlayerInAnyVehicle(playerid))
if(IsPlayerConnected(zielperson)) {
if(zielperson != playerid) {
if(SPIELER_GEDUCKT(zielperson)) {
if(IsPlayerInRangeOfPoint(zielperson, 0.4, x, y, z)) {
GameTextForPlayer(playerid, "~r~HEADSHOT", 2000, 6);
PlayerInfo[zielperson][pHeadshotkill] = 1;
TOETESPIELER(zielperson);
}
}
else {
if(IsPlayerInRangeOfPoint(zielperson, 0.4, x, y, z - 0.7))
{
GameTextForPlayer(playerid, "~r~HEADSHOT", 2000, 6);
PlayerInfo[zielperson][pHeadshotkill] = 1;
TOETESPIELER(zielperson);
}
}
}
}
}
}
}
return 1;
}
OnPlayerDeath:
if(PlayerInfo[playerid][pHeadValue] > 0 || PlayerInfo[playerid][pHeadValue] > 0 && PlayerInfo[playerid][pHeadshotkill] > 0)
{
if(IsPlayerConnected(killerid))
{
if(PlayerInfo[killerid][pMember] == 10 || PlayerInfo[killerid][pLeader] == 10)
{
if(GoChase[killerid] == playerid )
{
ConsumingMoney[killerid] = 1;
new killer[MAX_PLAYER_NAME];
GetPlayerName(killerid, killer, sizeof(killer));
GivePlayerMoney(killerid, PlayerInfo[playerid][pHeadValue]);
format(string,128,"<< Hitman %s hat den Auftrag an %s erfüllt und bekommt: $%d >>",killer,name,PlayerInfo[playerid][pHeadValue]);
SendFamilyMessage(10, COLOR_YELLOW, string);
PlayerInfo[playerid][pTot] = 0;
pIstTot[playerid] = 0;
DestroyPickup(TotenKopf[playerid][0]);
PlayerInfo[playerid][pHeadshotkill] = 0;
PlayerInfo[playerid][pHeadValue] = 0;
PlayerInfo[playerid][pJailed] = 2;
PlayerInfo[playerid][pJailTime] = 1800;
SetPlayerInterior(playerid, 3);
SetPlayerPos(playerid, 197.6924,174.9631,1003.0234);
GotHit[playerid] = 0;
GetChased[playerid] = 999;
GoChase[killerid] = 999;
}
}
}
}
Hatte nun in dem "stock Headshot_ErmittleZielperson(playerid)" bei "TOETESPIELER(zielperson)" folgendes eingefügt
"PlayerInfo[zielperson][pHeadshotkill] = 1;" anschließend hatte ich bei OnPlayerDeath rein geschrieben wenn "PlayerInfo[zielperson][pHeadshotkill] = 1;" ist kommt der getötete ins jail, danach wird dann "PlayerInfo[zielperson][pHeadshotkill]" auf "0" gesetzt . Aber leider passiert da nichts, könnte mir da nochmal einer auf die sprünge helfen
Guten Abend liebe Community,
ich krieg es einfach nicht hin das mein Headshot als Hitman kill gezählt wird.
Könnte mir da jemand kurz helfen ?
stock Headshot_ErmittleZielperson(playerid)
{
if(PlayerInfo[playerid][pMember] == 10 || PlayerInfo[playerid][pLeader] == 10)
{
new Float:x,Float:y,Float:z,Float:FrontX,Float:FrontY,Float:FrontZ,Float:CamX,Float:CamY,Float:CamZ;
GetPlayerCameraFrontVector(playerid, FrontX, FrontY, FrontZ);
GetPlayerCameraPos(playerid, CamX, CamY, CamZ);
for(new Float:i = 0.0; i < 100; i = i + 0.5)
{
x = FrontX * i + CamX; y = FrontY * i + CamY; z = FrontZ * i + CamZ;
for(new zielperson = 0; zielperson < MAX_PLAYERS; zielperson ++)
{
if(!IsPlayerNPC(zielperson) && !IsPlayerInAnyVehicle(playerid))
if(IsPlayerConnected(zielperson))
{
if(zielperson != playerid)
{
if(SPIELER_GEDUCKT(zielperson))
{
if(IsPlayerInRangeOfPoint(zielperson, 0.4, x, y, z))
{
GameTextForPlayer(playerid, "~r~HEADSHOT", 2000, 6);
TOETESPIELER(zielperson);
else
{
if(IsPlayerInRangeOfPoint(zielperson, 0.4, x, y, z - 0.7))
{
GameTextForPlayer(playerid, "~r~HEADSHOT", 2000, 6);
TOETESPIELER(zielperson);
}
}
}
}
}
}
}
return 1;
}
Unter OnPlayerDeath hab ich nichts drin. Wüsste auch nicht was ich dort genau rein machen müsste damit der kill gezählt wird
edit: richtig hin gerückt
Guten Tag,
seid ich eine Beta version von 1.4.0 besitze und den Junkbuster v11, lagt mein server wenn sich mehrere User an einem Punkt befinden. Ich bin der Meinung das es an irgendwelchen Timer vom DT_Carsystem liegt, aber mir wurde auch gesagt das es auch möglich sein könnte das Junkbuster dem DT_Carsystem irgendwelche ausführungen verbietet die zu den lags führen.
Kennt da einer einen möglichen Bugfix ?
Guten Abend,
ich hab ein Problem mit dem 3dLabel inGame von meinen Business System. Wenn das System frisch erstellt wurde erscheint da ein 3dLabel was auch keine Probleme zeigt. Aber sobald der Server restartet wird ist bei dem 3dLabel nur noch ein Text mit der schrift "Nothing".
Ich hab mein Business System mit anderen verglichen und grundsätzlich ist alles gleich da es das standart biz system vom GF ist...
Hat vlt. einer eine Lösung wie ich das "Nothing" fixen könnte?
Mfg dave1091
Kann gelöscht werden.
Problem wurde gelöst.
Okay dann hoffe ich doch mal das ich mit meiner kleinen idee helfen konnte
Mieter auf eine anzahl beschränken !?!
Also das man dann beim Hauserstellen auswählen kann ob das ein Kleines,Mittleres oder Großes Haus ist und je nach dem was man ausgewählt hat wird dann der wert gesetzt.
Meine idee wäre dann z.b.
Kleines Haus: 1 Mieter
Mittleres Haus: 3 Mieter
Großes Haus: 6 Mieter
die werte sollte man dann auch im script verändern können.
Vielleicht könnte man dann noch am Hauseingang einen Label hinzufügen wieviele Mietplätze schon belegt sind. Also z.b. Mieter: 2/3...
Was mach ich an diesem Befehl falsch ?
Er zeigt mir keine errors oder warnings an aber er will das Geld von der Fraktionskasse nicht abziehen
FraktionsKasse[7] = strval(string);
if(FillUp >= FraktionsKasse[7])
{
TogglePlayerControllable(i, 1);
Gas[VID] += FillUp;
FillUp = FillUp * preis * 2;
FraktionsKasse[7] -= FillUp;
format(string,sizeof(string),"* Der Tank wurde aufgefüllt, Preis: %d$.",FillUp);
SendClientMessage(i,COLOR_LIGHTBLUE,string);
format(string,sizeof(string),"* Die Regierung hat die Tankkosten bezahlt.");
SendClientMessage(i,COLOR_LIGHTBLUE,string);
Refueling[i] = 0;
}
else
{
SendClientMessage(i, COLOR_GREY, "Es ist nicht so viel Geld in der Staatskasse.");
TogglePlayerControllable(i, 1);
return 1;
}
Das hier "FraktionsKasse[7] = strval(string);" hab ich einfach zur probe eingefügt will jedoch auch nicht funktionieren...
edit:
Und so wird es gespeicht und geladen
public LoadFraktionsKassen()
{
new File:Kasse = fopen("Fraktionskassen.cfg",io_read);
new idx = 0;
new read[128];
while(idx < sizeof(FraktionsKasse))
{
fread(Kasse,read);
for(new x=0; x<strlen(read); x++)
{
if(read[x]== '\n')
{
read[x] = '\0';
}
}
FraktionsKasse[idx] = strval(read);
idx++;
}
fclose(Kasse);
return 1;
}
public SaveFraktionsKassen()
{
new File:Kasse = fopen("Fraktionskassen.cfg",io_write);
new write[24];
for(new idx; idx < sizeof(FraktionsKasse); idx++)
{
format(write,sizeof(write),"%d\n",FraktionsKasse[idx]);
fwrite(Kasse,write);
}
fclose(Kasse);
return 1;
}
Puh, eigendlich nicht. ich versuche es aber bis dahin ne beta für dich zu haben.
edit:
Habe jetzt die speicherung des Playertyps schonmal für die Beta eingebaut.
Dazu habe ich noch das SqlSystem etwas umgebaut, damit das updaten der Variablen den Server weniger belastet.
Freut mich das es vorran geht
Ich warte dann auf deine PN
Wäre es denn auch möglich das ich diese Variante scriptisch bis Samstag erhalten könnte ?
Wäre es möglich eine abfrage einzubauen, dass wenn ein User kein Premium Rank mehr hat auch das jeweilige Auto vom Premium Autohaus verliert oder wäre solch eine Abfrage nicht möglich?
@dave91:
Hm, muss ich mal schauen wann ich zeit habe, da muss ich direkt bei dir kucken.
Okay schreib mir dann eine PN oder schreib es hier wenn du dann Zeit hast.
Alles anzeigen
Hm,
[17:03:55] [debug] #0 native mysql_fetch_field () [b7422610] from mysql.so
[17:03:55] [debug] #1 00060df8 in public Dtdc_LoadVeh (0x04d07d50, 0x00000000) from DT_DynamicCar.amx
[17:03:55] [debug] #2 00004f30 in public DTDC_InitLoad (0x00000001) from DT_DynamicCar.amx
Hast du Beim Filterscript auch eingestellt, dass du Strickenkid nutzen willst?
Ja musste doch nur im Filterscript die // entfernen
Und das hab ich auch getan und somit muss auch Strickenkid laufen
[17:02:18] [debug] Run time error 4: "Array index out of bounds"
[17:02:18] [debug] Accessing element at index 200 past array upper bound 199
[17:02:18] [debug] AMX backtrace:
[17:02:18] [debug] #0 00055d98 in public Dtdc_LoadSPark () from DT_DynamicCar.amx
[17:02:18] [debug] #1 00000ce8 in public OnFilterScriptInit () from DT_DynamicCar.amx
[17:03:55] [debug] Server crashed while executing DT_DynamicCar.amx
[17:03:55] [debug] AMX backtrace:
[17:03:55] [debug] #0 native mysql_fetch_field () [b7422610] from mysql.so
[17:03:55] [debug] #1 00060df8 in public Dtdc_LoadVeh (0x04d07d50, 0x00000000) from DT_DynamicCar.amx
[17:03:55] [debug] #2 00004f30 in public DTDC_InitLoad (0x00000001) from DT_DynamicCar.amx
[17:03:55] [debug] Native backtrace:
[17:03:55] [debug] #0 b6bef60b in _ZN10StackTraceC1EPv () from plugins/crashdetect.so
[17:03:55] [debug] #1 b6be6e92 in _ZN11CrashDetect20PrintNativeBacktraceEPv () from plugins/crashdetect.so
[17:03:55] [debug] #2 b6be88d9 in _ZN11CrashDetect11OnExceptionEPv () from plugins/crashdetect.so
[17:03:55] [debug] #3 b6bef2a0 in ?? () from plugins/crashdetect.so
[17:03:55] [debug] #4 b77d6600 in ?? ()
[17:03:55] [debug] #5 b75a0e15 in ?? () from /lib32/libc.so.6
[17:03:55] [debug] #6 b741ed9b in _Z9SetStringP6tagAMXiPKc () from plugins/mysql.so
[17:03:55] [debug] #7 b7422701 in _ZN7Natives19n_mysql_fetch_fieldEP6tagAMXPi () from plugins/mysql.so
[17:03:55] [debug] #8 08093c94 in ?? () from ./samp03svr
[17:03:55] [debug] #9 b6be65fc in _ZN11CrashDetect13DoAmxCallbackEiPiS0_ () from plugins/crashdetect.so
[17:03:55] [debug] #10 b6beb15c in ?? () from plugins/crashdetect.so
[17:03:55] [debug] #11 b6bf364d in amx_Exec () from plugins/crashdetect.so
[17:03:55] [debug] #12 b6be8abb in _ZN11CrashDetect9DoAmxExecEPii () from plugins/crashdetect.so
[17:03:55] [debug] #13 b6beb100 in ?? () from plugins/crashdetect.so
[17:03:55] [debug] #14 080dc025 in ?? () from ./samp03svr
[17:03:55] [debug] #15 080b5c7b in ?? () from ./samp03svr
[17:03:55] [debug] #16 080b1453 in ?? () from ./samp03svr
[17:03:55] [debug] #17 b7543ca6 in __libc_start_main () from /lib32/libc.so.6
[17:03:55] [debug] #18 0804b521 in ?? () from ./samp03svr