Enum / Dini Warning

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Enum / Dini Warning

    Ich finde den Fehler nicht.

    PAWN-Quellcode

    1. enum Inventar_Name{ PolosChickenwings[128], FreddysMargarithaPizza[128], Sprunk[128], Cannabis[128], CrystalMeth[128], Heroin[128], Kokain[128]}enum Inventar_Daten{ //Bedarf Inventar Float:PolosChickenwings, Float:FreddysMargarithaPizza, Float:Sprunk, //Illegales Inventar Float:Cannabis[101], Float:CrystalMeth[101], Float:Heroin[101], Float:Kokain[101],};new Inventar[MAX_PLAYERS][Inventar_Daten];new InventarName[Inventar_Name];
    2. for(new i = 0; i<MAX_PRODUCTS;i++)
    3. {
    4. format(string,sizeof(string),"%s",InventarName[Inventar_Name:i]);
    5. Inventar[playerid][Inventar_Daten:i] = dini_Float(file,string); }


    1. C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(907) : warning 213: tag mismatch


    Betroffenes Problem:
    format(string,sizeof(string),"%s",InventarName[Inventar_Name:i]); Inventar[playerid][Inventar_Daten:i] = dini_Float(file,string); }[/pwn]

    (Spielleitung im Forum gesucht, PN an mich!)
  • ==Banger schrieb:

    Ich finde den Fehler nicht.
    In Inventar hast du manchmal FloatArrays und manchmal nicht.

    Das heißt du kannst das nicht direkt so setzen:


    ==Banger schrieb:

    Inventar[playerid][Inventar_Daten:i] = dini_Float(file,string);
    Das geht nicht, da dini_Float ja nur einzelene Werte zurückgibt.


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. X/
  • ==Banger schrieb:

    Würde nicht gehen weil die Werte alphabetisch sotiert werden sollen und das auch mit neu Erstellten
    Kannst du doch machen?!

    Ich sagte du kannst nur noch die Reihenfolge im Enum ändern, also etwas über Qualität setzten.
    Allerdings kannst du unten drunter alles erstellen.
    Und zu dem Zeitpunkt wo du das enum speicherst, ist es sortiert und wo du es lädst auch, da verändert sich ja nichts.


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. X/

  • ==Banger schrieb:

    Hab jetzt nur Floats drin im Enum, kann man das irgendwie anders schreiben damit es dynamisch ist?

    PAWN-Quellcode

    1. for(new i = 0; i<MAX_PRODUCTS; i++)
    2. {
    3. for(new j = 0; j < MAX_KLASSEN; j++)
    4. {
    5. format(string,sizeof(string),"%s%d",InventarName[Inventar_Name:i], j);
    6. Inventar[playerid][Inventar_Daten:i][j] = dini_Float(file,string);
    7. }
    8. }


    Mit:

    PAWN-Quellcode

    1. #define MAX_KLASSEN 101

    Das setzt du dann am besten in dein Enum auch anstelle der 101'er ein.

    Speichern ebenfalls mit beiden Schleifen.
    In der Datei steht dann sowas wie:

    Quellcode

    1. Cannabis0=0
    2. Cannabis1=987
    3. Cannabis2=212
    4. ...
    5. Cannabis100=1111
    6. Herion0=123
    7. Herion1=0
    8. ...
    9. Herion100=1
    10. ...
  • Ne ich hab jetzt die mehrdimensionalen Enums entfernt und wollte sagen ich habe nur noch einfache drin. Das Ganze sieht jetzt so aus:

    PAWN-Quellcode

    1. enum Inventar_Name
    2. {
    3. PolosChickenwings[128],
    4. FreddysMargarithaPizza[128],
    5. Sprunk[128],
    6. }
    7. enum Inventar_Daten
    8. {
    9. //Bedarf Inventar
    10. Float:PolosChickenwings,
    11. Float:FreddysMargarithaPizza,
    12. Float:Sprunk,
    13. };
    14. new Inventar[MAX_PLAYERS][Inventar_Daten];
    15. new InventarName[Inventar_Name];
    16. for(new i = 0; i<MAX_PRODUCTS;i++)
    17. {
    18. if(Inventar[playerid][Inventar_Daten:i] > 0)
    19. {
    20. format(string,sizeof(string),"%s",InventarName[Inventar_Name:i]);
    21. Inventar[playerid][Inventar_Daten:i] = dini_Float(file,string);
    22. }
    23. }
    Alles anzeigen

    Warning in: Inventar[playerid][Inventar_Daten:i] = dini_Float(file,string);

    C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(923) : warning 213: tag mismatch

    (Spielleitung im Forum gesucht, PN an mich!)
  • Das funzt schon mal. Jetzt habe ich das selbe Problem bei der Speicherung von Integers. Also selbe Zeile der Funktion und selbes Warning. Wenn ich jedoch vor NormalInventar..... ein Int: setze kommen neue Errors. Hier beides einmal:

    Vorangeheweise 1:

    PAWN-Quellcode

    1. enum NormalInventar_Name
    2. {
    3. OfficerMarke[128],
    4. SatelietenHandy[128],
    5. OfficerUniform[128]
    6. }
    7. enum NormalInventar_Daten
    8. {
    9. pMarkeOfficer,
    10. pSateliteHandy,
    11. pUniformOfficer
    12. };
    13. new NormalInventarName[NormalInventar_Name];
    14. new NormalInventar[MAX_PLAYERS][NormalInventar_Daten];
    15. for(new i = 0; i<MAX_NORMALINVENTAR;i++)
    16. {
    17. if(NormalInventar[playerid][NormalInventar_Daten:i] > 0)
    18. {
    19. format(string,sizeof(string),"%s",NormalInventarName[NormalInventar_Name:i]);
    20. NormalInventar[playerid][NormalInventar_Daten:i] = dini_Float(file,string);
    21. }
    22. }
    Alles anzeigen

    Warning: NormalInventar[playerid][NormalInventar_Daten:i] = dini_Float(file,string);
    C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(930) : warning 213: tag mismatch




    Vorangehweise 2:

    PAWN-Quellcode

    1. new Int:NormalInventar[MAX_PLAYERS][NormalInventar_Daten];
    2. else if(!sscanf(params,"s[128]d",produkt,qualitaet,menge))
    3. {
    4. for(new i = 0; i<MAX_NORMALINVENTAR; i++)
    5. {
    6. if(!strcmp(produkt, NormalInventarName[NormalInventar_Name:i]) /*&& !isnull(produkt) && !isnull(InventarName[Inventar_Name:i])*/)
    7. {
    8. new string[128];
    9. NormalInventar[playerid][NormalInventar_Daten:i] += menge;
    10. format(string,sizeof(string),"Objekt %s erstellt: %d",NormalInventarName[NormalInventar_Name:i],menge);
    11. SCM(playerid,blau,string);
    12. return 1;
    13. }
    Alles anzeigen



    Zeile: NormalInventar[playerid][NormalInventar_Daten:i] += menge;

    C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(351) : warning 213: tag mismatch
    C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(927) : warning 213: tag mismatch
    C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(930) : warning 213: tag mismatch
    C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(993) : warning 213: tag mismatch
    C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(993) : warning 213: tag mismatch
    C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(1043) : warning 213: tag mismatch
    C:\Users\Anuschka\Desktop\BigCityLife\gamemodes\bigcitylife.pwn(1043) : warning 213: tag mismatch

    Falls benötigt kann ich auch die anderen Zeilen raussuchen.

    (Spielleitung im Forum gesucht, PN an mich!)