Beiträge von Kaliber

    Schreibt du deinen Code eigentlich absichtlich so verschachtelt, ich habe dir soo oft schon gezeigt wie du das schöner machen kannst.


    Und wiiiiiieso startest du Schleifen immer ab 1???


    Ich habe dir jetzt schon 1000x erklärt, dass Arrays in Pawn/C/Java/C#/C++/Javascript und allen anderen C ähnlichen Sprachen bei 0 beginnt.


    Lässt du das ab 1 starten, überspringst du immer deinen 1. Eintrag..und eine Tankstelle wird nicht funktionieren ^^



    Es ist wichtig Redundanz zu vermeiden.


    Desweiteren hattest du da was beim else vertauscht, der Code löst schon mal ein Problem, was dir bei deinem vorherigen Code nicht aufgefallen ist.


    Du sagst zwar es werden irgendwo viele Zahlen ausgegeben...aber du das nicht wo...was soll das? :D Sollen wir jetzt raten bei welcher Ausgabe das passiert?!?!
    Gib mal präzise Infos, was genau ausgegeben wird...etc pp
    Printe dir eventuell auch mal Werte und gib einen schönen Debug der Variablen an, dann kann man dir auch sofort helfen..


    Immer diese halben Sachen und komischen Codes.


    Generell könntest du dir soviel arbeit sparen, wenn du deine Systeme mal vernünftig auslagern würdest.
    Ich wette bis zu 70% deiner Zeit verschwendest du damit redundanten Code zu schreiben.

    ............


    Manchmal hab ich echt das Gefühl, dass du mich verarschen willst :D


    Was glaubst du bringt mir das?!


    Du scriptest jetzt doch schon auch seit mindestens 3 Jahren...


    Du musst mir natürlich den GANZEN Log schicken...weil die nachfolgenden prints doch entscheidend sind X/

    So das sind beide Command.

    Jaaa und die sind falsch.


    Wie ist es möglich...dass du es verkackt hast 4 Zeilen zu kopieren?!?!?!?!


    else
    {
    Vehicle[vehicleid][vehMats] -= gebraucht;
    Frak[1][frakEisen] += gebraucht;

    Das hast du da stehen.


    else
    {
    Vehicle[vehicleid][vehMats] = 0;
    Frak[1][frakEisen] += Vehicle[vehicleid][vehMats];

    Das hab ich da stehen...fällt dir irgendwie..irgendwas auf?!?!?!



    Negativ ich kann mich ausrüsten also sind Materialien vorhanden.
    habe dies schon getestet wen keine vorhanden sind kann man sich nicht ausrüsten.

    Habe ich dich gefragt ob du dich ausrüsten kannst oder ob ich wissen will OB da was drinnen ist?
    Nein ich habe dich gefragt WIE VIELE GENAU geladen werden und dafür musst du das printen.



    Wie bereits ich geschreieben habe habe ich den fehler schon beim laden gesucht da liegt kein fehler da die anzeige genauso daran liegt (3DTextLabel)
    Da steht es genauso in der DB: 245.000 und maximale Materialien 250.0000

    Das hattest du nicht geschrieben, aber gut zu wissen.


    Ja du solltest natürlich noch prüfen ob gebraucht 0 ist, dann ist ja klar, dass er nichts mehr benötigt und du kannst eine Fehlermeldung ausgeben.

    Hab es soweit angepasst.

    Nein, du hast vergessen beim else Vehicle[vehicleid][vehMats] = 0; zu setzen..so wie in meinem Code.



    Aber wen die Fraktion nur 5.000 brauchen liefert er trotzdem 25k ab?

    Bist du dir denn sicher, dass nur 5k gebraucht werden?


    Printe dir doch mal gebraucht und schau, welcher Wert da berechnet wird.


    Und ich hoffe dir ist klar, dass du angegeben hast, dass in das Lager 250k passen.

    einfach nur hinfahren und die menge was das biz braucht abladen. Wen zuviel geladen ist bleibt der Rest bzw sollte es bleiben. Schließlich bezahlt man dafür so gesehn.

    Dann musst du das berechnen.


    Du hast auch die Klammern falsch gesetzt...oh man..


    C
    if(GetVehicleModel(GetVehicleTrailer(GetPlayerVehicleID(playerid))) != 435) return SendClientMessage(playerid, COLOR_WHITE, "{AFAFAF}Du hast den falschen Anhänger. Du brauchst den Produkt Anhänger!");

    hoffe jemand kann mir helfen

    Du machst es dir viel zu kompliziert, schreib es einfach nur so:


    #define MAX_FRAKTIONEN 1

    Okay, alles klar :)


    Das Problem ist du hast einen index.


    Also schauen wir uns das mal an:



    new x[1];
    x[0] = 5; //Das ist kein Problem, denn ein Array fängt bei 0 an
    x[1] = 3; //Das geht nicht...weil wir nur 1nen Index zur Verfügung haben und zwar die 0


    Du versuchst aber, genau das untere auf x[1] zuzugreifen.


    Die Lösung ist ganz einfach, du musst entweder überall Fraktion[f_ID-1] verwenden oder direkt nur 0 als Fraktion eingeben, da sich das ja auf den Index bezieht :)