Stock error

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
  • Tach,
    ich habe heute versucht mit Stock eine Funktion zu machen mit der man gucken kann, ob ein Vehicle ein Motorrad o.Ä. ist.Nun wusste ich nicht genau wie ich anfangen sollte deswegen hab ich einfach mal wild drauf los gemacht. Nun, nach einigen Versuchen etwas zu verändern, kamen folgende Errors:


    Code
    D:\DOKUME~1\SNIPER~1\Desktop\0.3\GAMEMO~1\FALI.pwn(3967) : error 002: only a single statement (or expression) can follow each "case"
    D:\DOKUME~1\SNIPER~1\Desktop\0.3\GAMEMO~1\FALI.pwn(3967) : error 029: invalid expression, assumed zero
    D:\DOKUME~1\SNIPER~1\Desktop\0.3\GAMEMO~1\FALI.pwn(3967) : warning 215: expression has no effect
    D:\DOKUME~1\SNIPER~1\Desktop\0.3\GAMEMO~1\FALI.pwn(3967 -- 3968) : warning 215: expression has no effect
    D:\DOKUME~1\SNIPER~1\Desktop\0.3\GAMEMO~1\FALI.pwn(3968) : error 001: expected token: ";", but found "}"
    D:\DOKUME~1\SNIPER~1\Desktop\0.3\GAMEMO~1\FALI.pwn(3968) : fatal error 107: too many error messages on one line


    und hier die Zeile im Script:
    stock Roller(vehicleid)
    {
    for(new i = 0; i< MAX_VEHICLES; i++)
    {
    vehicleid = GetVehicleModel(i);
    switch(vehicleid)
    {
    448, 462, 586
    };
    return 1;
    }


    Ich hoffe mir kann einer helfen :D


    mfg Sniperwolfes

  • in einem neuen script bekomme ich auch komischerweise keine errors aber in meinem selfmade schon ;(


    stock Motorrad(vehicleid)
    {
    for(new i = 0; i< MAX_PLAYERS; i++)
    {
    new modelid = GetPlayerVehicleID(i);
    switch(modelid)
    {
    461, 463, 468, 521, 522, 581
    };
    return 1;
    }


    stock Roller(vehicleid)
    {
    for(new i = 0; i< MAX_PLAYERS; i++)
    {
    new modelid = GetPlayerVehicleID(i);
    switch(modelid)
    {
    448, 462, 586
    };
    return 1;
    }


    bei dem stock davor klappt es komischerweise nur beim Roller geht es nicht....
    hat jemand eine Lösung

  • Also ich sehe kein "case" (denke es fehlt bei dir..) und "};" sollte eh nicht klappen. Stock heißt, wenn du es nicht benutzt,liest er es sich gar nicht erst durch...daher keine Errors

  • stock Motorrad(vehicleid)
    {
    for(new i = 0; i< MAX_VEHICLES; i++)
    {
    vehicleid = GetVehicleModel(i);
    switch(vehicleid)
    {
    case 461, 463, 468, 521, 522, 581: return 1;
    }
    }
    return 0;
    }


    neues problem: man bekommt komischerweise bei allen autos "du hast keinen Motorrad Führerschein" obwohl das ein bus oder ähnliches ist
    hoffe mir kann da jemand behilflich sein^^

  • Verstehe nicht ganz wozu du einen Loop brauchst.Du solltest dir außerdem mal den Unterschied zwischen VehicleID & ModelID angucken.
    stock Motorrad(vehicleid) {
    switch(GetVehicleModel(vehicleid)) {
    case 461, 463, 468, 521, 522, 581: return 1;
    default: return 0;
    }
    return 0;
    }
    // Test
    public OnPlayerExitVehicle(playerid, vehicleid)
    {
    if(Motorrad(vehicleid)) {
    printf("PlayerID %d ist von einem Motorrad (VehicleID %d) abgestiegen",playerid,vehicleid);
    }
    return 1;
    }