2 Errors mit i Schleife bitte um Hilfe =(!

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
  • Hey ich habe ein Problem und zwar immer mit den i Schleifen :


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(newstate==PLAYER_STATE_DRIVER)
    {
    for(new i = 0; i<sizeof(Krankenwagen); i++) // expected token: "-identifier-", but found "="
    {
    if(GetPlayerVehicleID(playerid)==Krankenwagen[i]) //error 029: invalid expression, assumed zero
    {
    if(GetPVarInt(playerid,"Fraktion")!=2)
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,ROT,"Du hast keine Schlüssel für dieses Auto.");
    }
    }
    }
    return 1;
    }


    PS Habe noch nie mit einer i schleife gearbeitet!

    Der PC ist nur so schlau wie die Person die dahinter steckt.

  • nope bei ihm steht for(new i = 0 ....) die i variable wird aber von der i schleife übernommen und darf somit nicht von einem selber gesetzt werden

    Mfg aXD


    Kurze und Produktive antworten (manchmal) mit vielen Rechtschreibfehlern ;D

  • also beim ersten fehler kann es doch nur i = 0 sein da pawn ein identifier sucht aber = findet !? oder ?

    Mfg aXD


    Kurze und Produktive antworten (manchmal) mit vielen Rechtschreibfehlern ;D

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • if(newstate==PLAYER_STATE_DRIVER)
    {
    for(new i=0; i<sizeof(Krankenwagen); i++) // expected token: "-identifier-", but found "="
    {
    if(GetPlayerVehicleID(playerid)==Krankenwagen[i]) //error 029: invalid expression, assumed zero
    {
    if(GetPVarInt(playerid,"Fraktion")!=2)
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,ROT,"Du hast keine Schlüssel für dieses Auto.");
    }
    }
    }
    return 1;
    vllt so ? :D

  • ich weis net was du damit meinst aber ich poste mal alles vom Krankenwagen.


    new Krankenwagen[5];
    //Medic
    Krankenwagen[0]=SetVehicleNumberPlate(CreateVehicle(416,1190.8849,-1361.2365,13.6156,359.7813,1,3,800),"Medic"); // Krw1
    Krankenwagen[1]=SetVehicleNumberPlate(CreateVehicle(416,1179.8776,-1338.9414,13.9447,271.5444,1,3,800),"Medic"); // Krw2
    Krankenwagen[2]=SetVehicleNumberPlate(CreateVehicle(416,1191.0474,-1327.0288,13.6308,359.8882,1,3,800),"Medic"); // Krw3
    Krankenwagen[3]=SetVehicleNumberPlate(CreateVehicle(416,1177.9274,-1308.0505,14.0098,268.8996,1,3,800),"Medic"); // Krw4
    Krankenwagen[4]=SetVehicleNumberPlate(CreateVehicle(416,1210.6298,-1328.6970,13.6282,180.4907,1,3,800),"Medic"); // Krw5

    Der PC ist nur so schlau wie die Person die dahinter steckt.

  • Was Cooper meinte ist egal das kannst du so lassen wie du möchtest.


    hast du die Variable Krankenwagen unter OnGameModeInit erstellt mit (new Krankenwagen) oder drüber damit diese Variable für das ganze Script verwendet werden darf?

    Die Macht etwas zu bewirken, ist in Dir. Du musst sie nur rauslassen


    cristiano-ronaldo-525-portugal-euro-2012-banner-wallpaper.jpg

  • ich finde die lösung mit der schleife blöd ;)


    Sollte doch eigentlich über eine Modelabfrage gehen, oder ??

    if(newstate==PLAYER_STATE_DRIVER)
    {
    if(GetVehicleModel(GetPlayerVehicleID(playerid))==416)//Krankenwagen
    {
    if(GetPVarInt(playerid,"Fraktion")!=2)
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,ROT,"Du hast keine Schlüssel für dieses Auto.");
    }
    }
    return 1;
    }



    Hinweis: Keinen Kontakt über TeamViewer oder Skype !
    Grüßt den Fehlerklärbär von mir.
    Coming soon: Pawn-Café ( Concept-Sharing | Scripting-First-Aid )