[Problem] mit Tanksystem

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hallo Brotfische,


    Ich bekomme ein paar Fehler und bekomm sie nicht gefixt. Jetzt hoffe ich auf eure Hilfe.

    #define GetBenzinArt(%0) sprit{GetVehicleModel(%0)-400}


    ocmd:spritart(playerid,params[])
    {
    new vehid=GetPlayerVehicleID(playerid),string[128];
    format(string,sizeof(string),"Fahrzeugname: %s | Tankart: %s",VehicleName[GetVehicleModel(vehid)-400],GetBenzinArt(vehicleid));//Fehler
    SendClientMessage(playerid,C_Weiß,string);
    return 1;
    }


    stock const sprit[MAX_MODELS char] = {
    //Vehicle_Model_ID
    SPRIT_GAS,//400
    SPRIT_BENZIN,//401
    SPRIT_BENZIN,//402
    SPRIT_LKWDIESEL,//403
    SPRIT_DIESEL,//404
    SPRIT_DIESEL,//405
    SPRIT_LKWDIESEL,//406
    SPRIT_LKWDIESEL,//407
    SPRIT_LKWDIESEL,//408
    SPRIT_BENZIN,//409
    SPRIT_ELEKTRO,//410
    SPRIT_BENZIN,//411
    SPRIT_BENZIN,//412
    SPRIT_DIESEL,//413
    SPRIT_DIESEL,//414
    SPRIT_BENZIN,//415
    SPRIT_DIESEL,//416
    SPRIT_KEROSIN,//417
    SPRIT_DIESEL,//418
    SPRIT_BENZIN,//419
    SPRIT_DIESEL,//420
    SPRIT_BENZIN,//421
    SPRIT_DIESEL,//422
    SPRIT_DIESEL,//423
    SPRIT_BENZIN,//424
    SPRIT_KEROSIN,//425
    SPRIT_BENZIN,//426
    SPRIT_LKWDIESEL,//427
    SPRIT_LKWDIESEL,//428
    SPRIT_BENZIN,//429
    SPRIT_BENZIN,//430
    SPRIT_DIESEL,//431
    SPRIT_DIESEL,//432
    SPRIT_LKWDIESEL,//433
    SPRIT_BENZIN,//434
    SPRIT_NONE,//435
    SPRIT_ELEKTRO,//436
    SPRIT_DIESEL,//437
    SPRIT_DIESEL,//438
    SPRIT_BENZIN,//439
    SPRIT_DIESEL,//440
    SPRIT_NONE,//441
    SPRIT_DIESEL,//442
    SPRIT_LKWDIESEL,//443
    SPRIT_LKWDIESEL,//444
    SPRIT_DIESEL,//445
    SPRIT_BENZIN,//446
    SPRIT_KEROSIN,//447
    SPRIT_BENZIN,//448
    SPRIT_DIESEL,//449
    SPRIT_NONE,//450
    SPRIT_BENZIN,//451
    SPRIT_BENZIN,//452
    SPRIT_BENZIN,//453
    SPRIT_BENZIN,//454
    SPRIT_LKWDIESEL,//455
    SPRIT_LKWDIESEL,//456
    SPRIT_ELEKTRO,//457
    SPRIT_ELEKTRO,//458
    SPRIT_DIESEL,//459
    SPRIT_KEROSIN,//460
    SPRIT_BENZIN,//461
    SPRIT_BENZIN,//462
    SPRIT_BENZIN,//463
    SPRIT_NONE,//464
    SPRIT_NONE,//465
    SPRIT_BENZIN,//466
    SPRIT_BENZIN,//467
    SPRIT_BENZIN,//468
    SPRIT_KEROSIN,//469
    SPRIT_DIESEL,//470
    SPRIT_BENZIN,//471
    SPRIT_BENZIN,//472
    SPRIT_BENZIN,//473
    SPRIT_DIESEL,//474
    SPRIT_BENZIN,//475
    SPRIT_KEROSIN,//476
    SPRIT_BENZIN,//477
    SPRIT_DIESEL,//478
    SPRIT_DIESEL,//479
    SPRIT_BENZIN,//480
    SPRIT_NONE,//481
    SPRIT_DIESEL,//482
    SPRIT_DIESEL,//483
    SPRIT_BENZIN,//484
    SPRIT_BENZIN,//485
    SPRIT_DIESEL,//486
    SPRIT_KEROSIN,//487
    SPRIT_KEROSIN,//488
    SPRIT_GAS,//489
    SPRIT_GAS,//490
    SPRIT_BENZIN,//491
    SPRIT_BENZIN,//492
    SPRIT_BENZIN,//493
    SPRIT_BENZIN,//494
    SPRIT_DIESEL,//495
    SPRIT_ELEKTRO,//496
    SPRIT_KEROSIN,//497
    SPRIT_DIESEL,//498
    SPRIT_DIESEL,//499
    SPRIT_GAS,//500
    SPRIT_NONE,//501
    SPRIT_BENZIN,//502
    SPRIT_BENZIN,//503
    SPRIT_BENZIN,//504
    SPRIT_GAS,//505
    SPRIT_BENZIN,//506
    SPRIT_DIESEL,//507
    SPRIT_DIESEL,//508
    SPRIT_NONE,//509
    SPRIT_NONE,//510
    SPRIT_KEROSIN,//511
    SPRIT_KEROSIN,//512
    SPRIT_KEROSIN,//513
    SPRIT_LKWDIESEL,//514
    SPRIT_LKWDIESEL,//515
    SPRIT_ELEKTRO,//516
    SPRIT_BENZIN,//517
    SPRIT_BENZIN,//518
    SPRIT_KEROSIN,//519
    SPRIT_KEROSIN,//520
    SPRIT_BENZIN,//521
    SPRIT_BENZIN,//522
    SPRIT_BENZIN,//523
    SPRIT_LKWDIESEL,//524
    SPRIT_DIESEL,//525
    SPRIT_ELEKTRO,//526
    SPRIT_ELEKTRO,//527
    SPRIT_DIESEL,//528
    SPRIT_DIESEL,//529
    SPRIT_DIESEL,//530
    SPRIT_DIESEL,//531
    SPRIT_DIESEL,//532
    SPRIT_BENZIN,//533
    SPRIT_BENZIN,//534
    SPRIT_DIESEL,//535
    SPRIT_BENZIN,//536
    SPRIT_DIESEL,//537
    SPRIT_DIESEL,//538
    SPRIT_BENZIN,//539
    SPRIT_BENZIN,//540
    SPRIT_BENZIN,//541
    SPRIT_DIESEL,//542
    SPRIT_DIESEL,//543
    SPRIT_LKWDIESEL,//544
    SPRIT_DIESEL,//545
    SPRIT_BENZIN,//546
    SPRIT_ELEKTRO,//547
    SPRIT_KEROSIN,//548
    SPRIT_DIESEL,//549
    SPRIT_DIESEL,//550
    SPRIT_BENZIN,//551
    SPRIT_DIESEL,//552
    SPRIT_KEROSIN,//553
    SPRIT_DIESEL,//554
    SPRIT_BENZIN,//555
    SPRIT_DIESEL,//556
    SPRIT_DIESEL,//557
    SPRIT_ELEKTRO,//558
    SPRIT_BENZIN,//559
    SPRIT_BENZIN,//560
    SPRIT_DIESEL,//561
    SPRIT_BENZIN,//562
    SPRIT_KEROSIN,//563
    SPRIT_NONE,//564
    SPRIT_BENZIN,//565
    SPRIT_BENZIN,//566
    SPRIT_BENZIN,//567
    SPRIT_DIESEL,//568
    SPRIT_NONE,//569
    SPRIT_NONE,//570
    SPRIT_BENZIN,//571
    SPRIT_BENZIN,//572
    SPRIT_LKWDIESEL,//573
    SPRIT_ELEKTRO,//574
    SPRIT_BENZIN,//575
    SPRIT_DIESEL,//576
    SPRIT_KEROSIN,//577
    SPRIT_LKWDIESEL,//578
    SPRIT_GAS,//579
    SPRIT_BENZIN,//580
    SPRIT_BENZIN,//581
    SPRIT_DIESEL,//582
    SPRIT_ELEKTRO,//583
    SPRIT_NONE,//584
    SPRIT_ELEKTRO,//585
    SPRIT_BENZIN,//586
    SPRIT_BENZIN,//587
    SPRIT_DIESEL,//588
    SPRIT_BENZIN,//589
    SPRIT_NONE,//590
    SPRIT_NONE,//591
    SPRIT_KEROSIN,//592
    SPRIT_KEROSIN,//593
    SPRIT_NONE,//594
    SPRIT_BENZIN,//595
    SPRIT_DIESEL,//596
    SPRIT_DIESEL,//597
    SPRIT_DIESEL,//598
    SPRIT_DIESEL,//599
    SPRIT_DIESEL,//600
    SPRIT_LKWDIESEL,//601
    SPRIT_ELEKTRO,//602
    SPRIT_BENZIN,//603
    SPRIT_DIESEL,//604
    SPRIT_DIESEL,//605
    SPRIT_NONE,//606
    SPRIT_NONE,//607
    SPRIT_NONE,//608
    SPRIT_DIESEL,//609
    SPRIT_NONE,//610
    SPRIT_NONE//611
    };


    Error Codes:
    PAWN Quelltext Zeile ( 6 ) : error 017: undefined symbol "sprit"
    PAWN Quelltext Zeile ( 225 ) : error 018: initialization data exceeds declared size


    Mit freundlichen Grüßen
    German_ScripterHD

  • Wenn ich das stock weglasse bekomme ich 3 Errors mehr (5 Errors)


    Habe erstmal wider stock davor gestezt, jetzt sind es wieder nur 2 Errors:



    PAWN Quelltext Zeile ( 6 ) : error 017: undefined symbol "sprit"
    PAWN Quelltext Zeile ( 225 ) : error 018: initialization data exceeds declared size


    Bei diesem Error : "error 018: initialization data exceeds declared size" sagt der Fehlerklärbär das : Initialisierungsdaten überschreitet die deklarierte Größe


    .


    Mit freundlichen Grüßen
    German_ScripterHD

    2 Mal editiert, zuletzt von German_ScripterHD ()

  • Das was ich davor sagte kannst du wieder zum stock ändern.
    Kenne mich leider nicht ganz damit aus aber:


    #define GetBenzinArt(%0) sprit{GetVehicleModel(%0)-400}


    Soll das nicht so sein?


    #define GetBenzinArt(%0) sprit[GetVehicleModel(%0)-400]

  • Du musst nicht vehicleid nehmen sondern die Model-ID sprich so:
    GetBenzinArt(GetVehicleModel(vehicleid)-400));


    Die -400 weil die Werte ja bei 0 anfangen und 0+400 = 400 => Infernus


    Pascal.: Das ist ein "char"-Wert der muss in den geschweiften Klammern stehen. ;)


    MFG


  • GetBenzinArt(GetVehicleModel(vehicleid)-400));


    Habe ich gemacht, trotzdem bestehen beide Errors noch.


    //Edit:


    Wenn ich "/spritart" deaktiviere:
    ocmd:spritart(playerid,params[])
    {
    new vehid=GetPlayerVehicleID(playerid),string[128];
    format(string,sizeof(string),"Fahrzeugname: %s | Tankart: %s",VehicleName[GetVehicleModel(vehid)-400],GetSprit(GetVehicleModel(vehid)-400));//== GetVehicleModel(vehid)-400));
    SendClientMessage(playerid,C_Weiß,string);
    return 1;
    }
    Dann bekomme ich keine Errors.
    Aber ich möchte gerne eine Funktion, wo ich abfragen kann, welcher Kraftsoff das Fahrzeug hat.


    MfG :thumbup:


    Mit freundlichen Grüßen
    German_ScripterHD

    2 Mal editiert, zuletzt von German_ScripterHD ()

  • GetSprit(GetVehicleModel(vehid)-400)


    Was ist das denn für eine Funktion? :D


    Entferne mal das:
    #define GetBenzinArt(%0) sprit{GetVehicleModel(%0)-400}
    und füge das im Script ein:
    GetBenzinArt(vehicleid)
    {
    new return_string[15];
    if(sprit{GetVehicleModel(vehicleid)-400} == SPRIT_GAS)format(return_string,sizeof return_string,"Gas");
    else if(sprit{GetVehicleModel(vehicleid)-400} == SPRIT_BENZIN)format(return_string,sizeof return_string,"Benzin");
    else if(sprit{GetVehicleModel(vehicleid)-400} == SPRIT_DIESEL)format(return_string,sizeof return_string,"Diesel");
    else if(sprit{GetVehicleModel(vehicleid)-400} == SPRIT_ELEKTRO)format(return_string,sizeof return_string,"Elektro");
    else if(sprit{GetVehicleModel(vehicleid)-400} == SPRIT_LKWDIESEL)format(return_string,sizeof return_string,"LKWDiesel");
    else if(sprit{GetVehicleModel(vehicleid)-400} == SPRIT_KEROSIN)format(return_string,sizeof return_string,"Kerosin");
    return return_string;
    }


    Funktioniert das jetzt?

  • Die Funktion ist korrekt.


    Das Problem liegt daran, dass das Array nach der Funktion deklariert wird, bzw. nach dem Befehl.
    Füge das Array vor dem Befehl ein, dann geht es.


    Der andere Fehler liegt daran, dass MAX_MODELS nicht den richtigen Wert hat (212 sollte es sein wenn alle Fahrzeuge drin sind).

  • Was ist das denn für eine Funktion?


    Das ist ein Makro und das ist gut.


    Der andere Fehler liegt daran, dass MAX_MODELS nicht den richtigen Wert hat (211 sollte es sein wenn alle Fahrzeuge drin sind).


    Nein, mir ist aufgefallen, dass das packen nicht beim direkten initialisieren von Zahlen funktioniert nur bei Strings...wieso auch immer...


    Also schreib es mal ohne das char:


    #define GetBenzinArt(%0) sprit[GetVehicleModel(%0)-400]


    stock const sprit[MAX_MODELS] = {
    //Vehicle_Model_ID
    SPRIT_GAS,//400
    SPRIT_BENZIN,//401
    SPRIT_BENZIN,//402
    SPRIT_LKWDIESEL,//403
    SPRIT_DIESEL,//404
    SPRIT_DIESEL,//405
    SPRIT_LKWDIESEL,//406
    SPRIT_LKWDIESEL,//407
    SPRIT_LKWDIESEL,//408
    SPRIT_BENZIN,//409
    SPRIT_ELEKTRO,//410
    SPRIT_BENZIN,//411
    SPRIT_BENZIN,//412
    SPRIT_DIESEL,//413
    SPRIT_DIESEL,//414
    SPRIT_BENZIN,//415
    SPRIT_DIESEL,//416
    SPRIT_KEROSIN,//417
    SPRIT_DIESEL,//418
    SPRIT_BENZIN,//419
    SPRIT_DIESEL,//420
    SPRIT_BENZIN,//421
    SPRIT_DIESEL,//422
    SPRIT_DIESEL,//423
    SPRIT_BENZIN,//424
    SPRIT_KEROSIN,//425
    SPRIT_BENZIN,//426
    SPRIT_LKWDIESEL,//427
    SPRIT_LKWDIESEL,//428
    SPRIT_BENZIN,//429
    SPRIT_BENZIN,//430
    SPRIT_DIESEL,//431
    SPRIT_DIESEL,//432
    SPRIT_LKWDIESEL,//433
    SPRIT_BENZIN,//434
    SPRIT_NONE,//435
    SPRIT_ELEKTRO,//436
    SPRIT_DIESEL,//437
    SPRIT_DIESEL,//438
    SPRIT_BENZIN,//439
    SPRIT_DIESEL,//440
    SPRIT_NONE,//441
    SPRIT_DIESEL,//442
    SPRIT_LKWDIESEL,//443
    SPRIT_LKWDIESEL,//444
    SPRIT_DIESEL,//445
    SPRIT_BENZIN,//446
    SPRIT_KEROSIN,//447
    SPRIT_BENZIN,//448
    SPRIT_DIESEL,//449
    SPRIT_NONE,//450
    SPRIT_BENZIN,//451
    SPRIT_BENZIN,//452
    SPRIT_BENZIN,//453
    SPRIT_BENZIN,//454
    SPRIT_LKWDIESEL,//455
    SPRIT_LKWDIESEL,//456
    SPRIT_ELEKTRO,//457
    SPRIT_ELEKTRO,//458
    SPRIT_DIESEL,//459
    SPRIT_KEROSIN,//460
    SPRIT_BENZIN,//461
    SPRIT_BENZIN,//462
    SPRIT_BENZIN,//463
    SPRIT_NONE,//464
    SPRIT_NONE,//465
    SPRIT_BENZIN,//466
    SPRIT_BENZIN,//467
    SPRIT_BENZIN,//468
    SPRIT_KEROSIN,//469
    SPRIT_DIESEL,//470
    SPRIT_BENZIN,//471
    SPRIT_BENZIN,//472
    SPRIT_BENZIN,//473
    SPRIT_DIESEL,//474
    SPRIT_BENZIN,//475
    SPRIT_KEROSIN,//476
    SPRIT_BENZIN,//477
    SPRIT_DIESEL,//478
    SPRIT_DIESEL,//479
    SPRIT_BENZIN,//480
    SPRIT_NONE,//481
    SPRIT_DIESEL,//482
    SPRIT_DIESEL,//483
    SPRIT_BENZIN,//484
    SPRIT_BENZIN,//485
    SPRIT_DIESEL,//486
    SPRIT_KEROSIN,//487
    SPRIT_KEROSIN,//488
    SPRIT_GAS,//489
    SPRIT_GAS,//490
    SPRIT_BENZIN,//491
    SPRIT_BENZIN,//492
    SPRIT_BENZIN,//493
    SPRIT_BENZIN,//494
    SPRIT_DIESEL,//495
    SPRIT_ELEKTRO,//496
    SPRIT_KEROSIN,//497
    SPRIT_DIESEL,//498
    SPRIT_DIESEL,//499
    SPRIT_GAS,//500
    SPRIT_NONE,//501
    SPRIT_BENZIN,//502
    SPRIT_BENZIN,//503
    SPRIT_BENZIN,//504
    SPRIT_GAS,//505
    SPRIT_BENZIN,//506
    SPRIT_DIESEL,//507
    SPRIT_DIESEL,//508
    SPRIT_NONE,//509
    SPRIT_NONE,//510
    SPRIT_KEROSIN,//511
    SPRIT_KEROSIN,//512
    SPRIT_KEROSIN,//513
    SPRIT_LKWDIESEL,//514
    SPRIT_LKWDIESEL,//515
    SPRIT_ELEKTRO,//516
    SPRIT_BENZIN,//517
    SPRIT_BENZIN,//518
    SPRIT_KEROSIN,//519
    SPRIT_KEROSIN,//520
    SPRIT_BENZIN,//521
    SPRIT_BENZIN,//522
    SPRIT_BENZIN,//523
    SPRIT_LKWDIESEL,//524
    SPRIT_DIESEL,//525
    SPRIT_ELEKTRO,//526
    SPRIT_ELEKTRO,//527
    SPRIT_DIESEL,//528
    SPRIT_DIESEL,//529
    SPRIT_DIESEL,//530
    SPRIT_DIESEL,//531
    SPRIT_DIESEL,//532
    SPRIT_BENZIN,//533
    SPRIT_BENZIN,//534
    SPRIT_DIESEL,//535
    SPRIT_BENZIN,//536
    SPRIT_DIESEL,//537
    SPRIT_DIESEL,//538
    SPRIT_BENZIN,//539
    SPRIT_BENZIN,//540
    SPRIT_BENZIN,//541
    SPRIT_DIESEL,//542
    SPRIT_DIESEL,//543
    SPRIT_LKWDIESEL,//544
    SPRIT_DIESEL,//545
    SPRIT_BENZIN,//546
    SPRIT_ELEKTRO,//547
    SPRIT_KEROSIN,//548
    SPRIT_DIESEL,//549
    SPRIT_DIESEL,//550
    SPRIT_BENZIN,//551
    SPRIT_DIESEL,//552
    SPRIT_KEROSIN,//553
    SPRIT_DIESEL,//554
    SPRIT_BENZIN,//555
    SPRIT_DIESEL,//556
    SPRIT_DIESEL,//557
    SPRIT_ELEKTRO,//558
    SPRIT_BENZIN,//559
    SPRIT_BENZIN,//560
    SPRIT_DIESEL,//561
    SPRIT_BENZIN,//562
    SPRIT_KEROSIN,//563
    SPRIT_NONE,//564
    SPRIT_BENZIN,//565
    SPRIT_BENZIN,//566
    SPRIT_BENZIN,//567
    SPRIT_DIESEL,//568
    SPRIT_NONE,//569
    SPRIT_NONE,//570
    SPRIT_BENZIN,//571
    SPRIT_BENZIN,//572
    SPRIT_LKWDIESEL,//573
    SPRIT_ELEKTRO,//574
    SPRIT_BENZIN,//575
    SPRIT_DIESEL,//576
    SPRIT_KEROSIN,//577
    SPRIT_LKWDIESEL,//578
    SPRIT_GAS,//579
    SPRIT_BENZIN,//580
    SPRIT_BENZIN,//581
    SPRIT_DIESEL,//582
    SPRIT_ELEKTRO,//583
    SPRIT_NONE,//584
    SPRIT_ELEKTRO,//585
    SPRIT_BENZIN,//586
    SPRIT_BENZIN,//587
    SPRIT_DIESEL,//588
    SPRIT_BENZIN,//589
    SPRIT_NONE,//590
    SPRIT_NONE,//591
    SPRIT_KEROSIN,//592
    SPRIT_KEROSIN,//593
    SPRIT_NONE,//594
    SPRIT_BENZIN,//595
    SPRIT_DIESEL,//596
    SPRIT_DIESEL,//597
    SPRIT_DIESEL,//598
    SPRIT_DIESEL,//599
    SPRIT_DIESEL,//600
    SPRIT_LKWDIESEL,//601
    SPRIT_ELEKTRO,//602
    SPRIT_BENZIN,//603
    SPRIT_DIESEL,//604
    SPRIT_DIESEL,//605
    SPRIT_NONE,//606
    SPRIT_NONE,//607
    SPRIT_NONE,//608
    SPRIT_DIESEL,//609
    SPRIT_NONE,//610
    SPRIT_NONE//611
    };


    ocmd:spritart(playerid,params[])
    {
    new vehid=GetPlayerVehicleID(playerid),string[128];
    format(string,sizeof(string),"Fahrzeugname: %s | Tankart: %d",VehicleName[GetVehicleModel(vehid)-400],GetBenzinArt(vehicleid));//Fehler
    SendClientMessage(playerid,C_Weiß,string);
    return 1;
    }


    PS: Die Tankart sind ids, keine Namen. Wenn du namen willst, konvertiere die ids zu namen durch eine extra Funktion, z.B:


    stock GetTankName(id)
    {
    new name[32];
    switch(id)
    {
    case 0: name = "Kein Tank";
    case 1: name = "Diesel"; //z.B.
    }
    return name;
    }

    ast2ufdyxkb1.png


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

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Funktioniert das jetzt?


    Nein, leider nicht. Aber jetzt kommen wieder 8 Errors.


    Code:


    GetBenzinArt(vehicleid)
    {
    new return_string[15];
    if(sprit{GetVehicleModel(vehicleid)-400} == SPRIT_GAS)format(return_string,sizeof return_string,"Gas");
    else if(sprit{GetVehicleModel(vehicleid)-400} == SPRIT_BENZIN)format(return_string,sizeof return_string,"Benzin");
    else if(sprit{GetVehicleModel(vehicleid)-400} == SPRIT_DIESEL)format(return_string,sizeof return_string,"Diesel");
    else if(sprit{GetVehicleModel(vehicleid)-400} == SPRIT_ELEKTRO)format(return_string,sizeof return_string,"Elektro");
    else if(sprit{GetVehicleModel(vehicleid)-400} == SPRIT_LKWDIESEL)format(return_string,sizeof return_string,"LKWDiesel");
    else if(sprit{GetVehicleModel(vehicleid)-400} == SPRIT_KEROSIN)format(return_string,sizeof return_string,"Kerosin");
    return return_string;
    }
    stock const sprit[MAX_MODELS char] = {
    //...
    //...
    }; //Fehler



    Errors:



    PAWN Quelltext Zeile (4) : error 017: undefined symbol "sprit"
    PAWN Quelltext Zeile (5) : error 017: undefined symbol "sprit"
    PAWN Quelltext Zeile (6) : error 017: undefined symbol "sprit"
    PAWN Quelltext Zeile (7) : error 017: undefined symbol "sprit"
    PAWN Quelltext Zeile (8) : error 017: undefined symbol "sprit"
    PAWN Quelltext Zeile (9) : error 017: undefined symbol "sprit"
    PAWN Quelltext Zeile (10) : error 079: inconsistent return types (array & non-array)
    PAWN Quelltext Zeile (15) : error 018: initialization data exceeds declared size


    .


    Mit freundlichen Grüßen
    German_ScripterHD

  • Ich verstehe sowieso nicht warum man das so umständlich machen muss, denn damit fängt eh kaum einer was mit an und wie man sieht läuft es ohnehin nur auf Fehler raus. Klar geht es, aber überschaubarer wäre:


    Unter den Includes:

    Spoiler anzeigen
    new sprit[] = {
    //Vehicle_Model_ID
    SPRIT_GAS,//400
    SPRIT_BENZIN,//401
    SPRIT_BENZIN,//402
    SPRIT_LKWDIESEL,//403
    SPRIT_DIESEL,//404
    SPRIT_DIESEL,//405
    SPRIT_LKWDIESEL,//406
    SPRIT_LKWDIESEL,//407
    SPRIT_LKWDIESEL,//408
    SPRIT_BENZIN,//409
    SPRIT_ELEKTRO,//410
    SPRIT_BENZIN,//411
    SPRIT_BENZIN,//412
    SPRIT_DIESEL,//413
    SPRIT_DIESEL,//414
    SPRIT_BENZIN,//415
    SPRIT_DIESEL,//416
    SPRIT_KEROSIN,//417
    SPRIT_DIESEL,//418
    SPRIT_BENZIN,//419
    SPRIT_DIESEL,//420
    SPRIT_BENZIN,//421
    SPRIT_DIESEL,//422
    SPRIT_DIESEL,//423
    SPRIT_BENZIN,//424
    SPRIT_KEROSIN,//425
    SPRIT_BENZIN,//426
    SPRIT_LKWDIESEL,//427
    SPRIT_LKWDIESEL,//428
    SPRIT_BENZIN,//429
    SPRIT_BENZIN,//430
    SPRIT_DIESEL,//431
    SPRIT_DIESEL,//432
    SPRIT_LKWDIESEL,//433
    SPRIT_BENZIN,//434
    SPRIT_NONE,//435
    SPRIT_ELEKTRO,//436
    SPRIT_DIESEL,//437
    SPRIT_DIESEL,//438
    SPRIT_BENZIN,//439
    SPRIT_DIESEL,//440
    SPRIT_NONE,//441
    SPRIT_DIESEL,//442
    SPRIT_LKWDIESEL,//443
    SPRIT_LKWDIESEL,//444
    SPRIT_DIESEL,//445
    SPRIT_BENZIN,//446
    SPRIT_KEROSIN,//447
    SPRIT_BENZIN,//448
    SPRIT_DIESEL,//449
    SPRIT_NONE,//450
    SPRIT_BENZIN,//451
    SPRIT_BENZIN,//452
    SPRIT_BENZIN,//453
    SPRIT_BENZIN,//454
    SPRIT_LKWDIESEL,//455
    SPRIT_LKWDIESEL,//456
    SPRIT_ELEKTRO,//457
    SPRIT_ELEKTRO,//458
    SPRIT_DIESEL,//459
    SPRIT_KEROSIN,//460
    SPRIT_BENZIN,//461
    SPRIT_BENZIN,//462
    SPRIT_BENZIN,//463
    SPRIT_NONE,//464
    SPRIT_NONE,//465
    SPRIT_BENZIN,//466
    SPRIT_BENZIN,//467
    SPRIT_BENZIN,//468
    SPRIT_KEROSIN,//469
    SPRIT_DIESEL,//470
    SPRIT_BENZIN,//471
    SPRIT_BENZIN,//472
    SPRIT_BENZIN,//473
    SPRIT_DIESEL,//474
    SPRIT_BENZIN,//475
    SPRIT_KEROSIN,//476
    SPRIT_BENZIN,//477
    SPRIT_DIESEL,//478
    SPRIT_DIESEL,//479
    SPRIT_BENZIN,//480
    SPRIT_NONE,//481
    SPRIT_DIESEL,//482
    SPRIT_DIESEL,//483
    SPRIT_BENZIN,//484
    SPRIT_BENZIN,//485
    SPRIT_DIESEL,//486
    SPRIT_KEROSIN,//487
    SPRIT_KEROSIN,//488
    SPRIT_GAS,//489
    SPRIT_GAS,//490
    SPRIT_BENZIN,//491
    SPRIT_BENZIN,//492
    SPRIT_BENZIN,//493
    SPRIT_BENZIN,//494
    SPRIT_DIESEL,//495
    SPRIT_ELEKTRO,//496
    SPRIT_KEROSIN,//497
    SPRIT_DIESEL,//498
    SPRIT_DIESEL,//499
    SPRIT_GAS,//500
    SPRIT_NONE,//501
    SPRIT_BENZIN,//502
    SPRIT_BENZIN,//503
    SPRIT_BENZIN,//504
    SPRIT_GAS,//505
    SPRIT_BENZIN,//506
    SPRIT_DIESEL,//507
    SPRIT_DIESEL,//508
    SPRIT_NONE,//509
    SPRIT_NONE,//510
    SPRIT_KEROSIN,//511
    SPRIT_KEROSIN,//512
    SPRIT_KEROSIN,//513
    SPRIT_LKWDIESEL,//514
    SPRIT_LKWDIESEL,//515
    SPRIT_ELEKTRO,//516
    SPRIT_BENZIN,//517
    SPRIT_BENZIN,//518
    SPRIT_KEROSIN,//519
    SPRIT_KEROSIN,//520
    SPRIT_BENZIN,//521
    SPRIT_BENZIN,//522
    SPRIT_BENZIN,//523
    SPRIT_LKWDIESEL,//524
    SPRIT_DIESEL,//525
    SPRIT_ELEKTRO,//526
    SPRIT_ELEKTRO,//527
    SPRIT_DIESEL,//528
    SPRIT_DIESEL,//529
    SPRIT_DIESEL,//530
    SPRIT_DIESEL,//531
    SPRIT_DIESEL,//532
    SPRIT_BENZIN,//533
    SPRIT_BENZIN,//534
    SPRIT_DIESEL,//535
    SPRIT_BENZIN,//536
    SPRIT_DIESEL,//537
    SPRIT_DIESEL,//538
    SPRIT_BENZIN,//539
    SPRIT_BENZIN,//540
    SPRIT_BENZIN,//541
    SPRIT_DIESEL,//542
    SPRIT_DIESEL,//543
    SPRIT_LKWDIESEL,//544
    SPRIT_DIESEL,//545
    SPRIT_BENZIN,//546
    SPRIT_ELEKTRO,//547
    SPRIT_KEROSIN,//548
    SPRIT_DIESEL,//549
    SPRIT_DIESEL,//550
    SPRIT_BENZIN,//551
    SPRIT_DIESEL,//552
    SPRIT_KEROSIN,//553
    SPRIT_DIESEL,//554
    SPRIT_BENZIN,//555
    SPRIT_DIESEL,//556
    SPRIT_DIESEL,//557
    SPRIT_ELEKTRO,//558
    SPRIT_BENZIN,//559
    SPRIT_BENZIN,//560
    SPRIT_DIESEL,//561
    SPRIT_BENZIN,//562
    SPRIT_KEROSIN,//563
    SPRIT_NONE,//564
    SPRIT_BENZIN,//565
    SPRIT_BENZIN,//566
    SPRIT_BENZIN,//567
    SPRIT_DIESEL,//568
    SPRIT_NONE,//569
    SPRIT_NONE,//570
    SPRIT_BENZIN,//571
    SPRIT_BENZIN,//572
    SPRIT_LKWDIESEL,//573
    SPRIT_ELEKTRO,//574
    SPRIT_BENZIN,//575
    SPRIT_DIESEL,//576
    SPRIT_KEROSIN,//577
    SPRIT_LKWDIESEL,//578
    SPRIT_GAS,//579
    SPRIT_BENZIN,//580
    SPRIT_BENZIN,//581
    SPRIT_DIESEL,//582
    SPRIT_ELEKTRO,//583
    SPRIT_NONE,//584
    SPRIT_ELEKTRO,//585
    SPRIT_BENZIN,//586
    SPRIT_BENZIN,//587
    SPRIT_DIESEL,//588
    SPRIT_BENZIN,//589
    SPRIT_NONE,//590
    SPRIT_NONE,//591
    SPRIT_KEROSIN,//592
    SPRIT_KEROSIN,//593
    SPRIT_NONE,//594
    SPRIT_BENZIN,//595
    SPRIT_DIESEL,//596
    SPRIT_DIESEL,//597
    SPRIT_DIESEL,//598
    SPRIT_DIESEL,//599
    SPRIT_DIESEL,//600
    SPRIT_LKWDIESEL,//601
    SPRIT_ELEKTRO,//602
    SPRIT_BENZIN,//603
    SPRIT_DIESEL,//604
    SPRIT_DIESEL,//605
    SPRIT_NONE,//606
    SPRIT_NONE,//607
    SPRIT_NONE,//608
    SPRIT_DIESEL,//609
    SPRIT_NONE,//610
    SPRIT_NONE//611
    };


    Der Befehl:
    ocmd:spritart(playerid,params[])
    {
    new vehid=GetPlayerVehicleID(playerid),string[128], art[32];
    new model = GetVehicleModel(vehid);
    if(model < 400 || model > 611) return SendClientMessage(playerid, 0xFF0000FF, "Error: In keinem Fahrzeug.");
    switch(sprit[model-400])
    {
    case 0: art = "Diesel";
    case 1: art = "Benzin";
    //...
    //Eben noch anpassen
    }
    format(string,sizeof(string),"Fahrzeugname: %s | Tankart: %s",VehicleName[model-400],art);//Fehler
    SendClientMessage(playerid,C_Weiß,string);
    return 1;
    }


    Und gut ist.


  • Danke Jeffry, aber ich verstehe die Anordnung mit den arten nicht.


    Ich habe es so gehabt, aber das war irgendwie falsch :)


    switch(sprit[sprit_model-400])
    {
    case 0: art = "Diesel";
    case 1: art = "Benzin";
    case 2: art = "Gas";
    case 3: art = "Lkw Diesel";
    case 4: art = "None";
    case 5: art = "Elektro";
    }


    Mit freundlichen Grüßen
    German_ScripterHD

  • Jeffry, die habe ich jetzt in der richtigen Rheienfolge.


    Ich habe versucht "/spritart" in ein Stock umzuschreiben, doch leider bekomme ich jetzt 6 Erorrs (error 006: must be assigned to an array)


    stock SpritArt(auto_model)
    {
    new art;
    switch(sprit[auto_model])
    {
    case 0: art = "Diesel";
    case 1: art = "Benzin";
    case 2: art = "Lkw Diesel";
    case 3: art = "Elektro";
    case 4: art = "Gas";
    case 5: art = "None";
    }
    return art;
    }


    Mit freundlichen Grüßen
    German_ScripterHD

    Einmal editiert, zuletzt von German_ScripterHD ()

  • Ja,


    new tanktimer;
    public TachoTimer(vehicleid)
    {
    new string[128];
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(!IsPlayerConnected(i))continue;
    if(GetPlayerState(i)==PLAYER_STATE_DRIVER)
    {
    //Hier werden Textdraws geupatet
    // ....
    }
    }
    tanktimer++;
    if(tanktimer==30)
    {
    tanktimer = 0;
    for(new i=1; i<sizeof(tank); i++)
    {
    // if(SpritArt..... != SPRIT_NONE)continue;
    if(!MotorOn(i) continue;
    tank[i]--;
    if(tank[i]>0)continue;
    StopMotor(i);
    }
    }
    return 1;
    }


    Mit freundlichen Grüßen
    German_ScripterHD

  • // if(SpritArt..... != SPRIT_NONE)continue;
    if(!MotorOn(i) continue;
    zu:
    if(!MotorOn(i) continue;
    new model = GetVehicleModel(i);
    if(model >= 400 && model <= 611) if(sprit[model-400] == SPRIT_NONE) continue;


    Wenn ich das Prinzip des Tanks dort richtig verstanden habe.