Beiträge von Tool

    Hey hab ne Frage.


    Ich möchte am Anfang nachdem man sich Registriert hat Ein "Video" Zeigen, wo die Kamera halt über ein "Gebiet" Fliegt, dass ich zuvor Festgelegt habe.
    Ist irgendwie schlecht Erklärt, aber ich denke, dass ihr wisst was ich mein ;)


    Das Problem, ist das mir bisher nur eine Idee einfällt, die jedoch meiner Ansicht nicht nur mehr als Ungenau sondern auch sehr sehr Ressourcen Fressend währe.


    Die Idee die ich hatte wäre es einfach nur mit einem Timer, SetPlayerCameraPos und SetPlayerCameraLookAt mache.


    Jetzt wollte ich wissen, ob es noch eine andere einfachere und vor allem Ressourcen sparendere Alternative gibt.

    Hey leute
    könnt ihr mir sagen warum
    1.
    In den Zeilen:
    8
    9 und
    11
    immer Tagmistach kommt


    ocmd:veh(playerid,params[])
    {
    new vID;
    new float:SVx;
    new float:SVy;
    new float:SVz;
    new float:SVa;
    GetPlayerPos(playerid,float:SVx,float:SVy,float:SVz);
    GetPlayerFacingAngle(playerid,float:SVa);
    sscanf(params,"i",vID);
    CreateVehicle(vID,SVx,SVy,SVz,SVa,0,0,0);
    return 1;
    }


    und 2. in diesem Befehl jede playerid als undefiniert erkannt wird?


    ocmd:linie(plaxerid,params[])
    {
    if(PlayerInfo[playerid][pJob] ==1)
    {
    ShowPlayerDialog(playerid,LINIE,DIALOG_STYLE_LIST,"Linien","Linie 1\nLinie 2","Akzeptieren", "Nein") ;
    }
    else
    {
    SendClientMessage(playerid,Rot,"Du bist kein Busfahrer");
    }
    return 1;
    }


    wäre nett von euch weil ich habe keine ahnung mehr -.-


    Mfg Tool

    if(strcmp("/muell", cmdtext, true, 8) == 0)
    {
    if(PlayerInfo[playerid][pJob] == 2)
    {
    if(!Muellmann[playerid][pmi_bAktiv])
    {
    new
    vehicleid = GetPlayerVehicleID(playerid),
    model = GetVehicleModel(vehicleid);
    if(model == 408)
    { // Text ab hier!
    Muellmann[playerid][pmi_Checkpoint]=0;
    Muellmann[playerid][pmi_bAktiv]=true;
    SendClientMessage(playerid, Neongruen, "Muellabfuhr gestartet, fahre nun zu den einzelnen Haeusern!");
    SetPlayerCheckpoint(playerid,Muellabfuhr_Stationen[0][M_fX],Muellabfuhr_Stationen[0][M_fY],Muellabfuhr_Stationen[0][M_fZ],Muellabfuhr_Stationen[0][M_fRad]);
    }
    else
    {
    SendClientMessage(playerid, Rot, "Du bist nicht im Muellwagen!");
    }
    }
    else
    {
    SendClientMessage(playerid, Rot, "Es laeuft schon eine Mission!");
    }
    else // hier wird der Error angezeigt
    {
    SendClientMessage(playerid,Rot,"Du bist kein muelfahrer");
    }
    return 1;
    }
    }

    Also hier das ist der Error:
    tool.pwn(355) : error 029: invalid expression, assumed zero



    und hie ist der kommplette Befehl:


    if(strcmp("/muell", cmdtext, true, 8) == 0)
    {
    if(PlayerInfo[playerid][pJob] == 2)
    {
    if(!Muellmann[playerid][pmi_bAktiv])
    {
    new
    vehicleid = GetPlayerVehicleID(playerid),
    model = GetVehicleModel(vehicleid);
    if(model == 408)
    {
    Muellmann[playerid][pmi_Checkpoint]=0;
    Muellmann[playerid][pmi_bAktiv]=true;
    SendClientMessage(playerid, Neongruen, "Muellabfuhr gestartet, fahre nun zu den einzelnen Haeusern!");
    SetPlayerCheckpoint(playerid,Muellabfuhr_Stationen[0][M_fX],Muellabfuhr_Stationen[0][M_fY],Muellabfuhr_Stationen[0][M_fZ],Muellabfuhr_Stationen[0][M_fRad]);
    }
    else
    {
    SendClientMessage(playerid, Rot, "Du bist nicht im Muellwagen!");
    }
    }
    else
    {
    SendClientMessage(playerid, Rot, "Es laeuft schon eine Mission!");
    }
    else//hier kommt der Error
    {
    SendClientMessage(playerid,Rot,"Du bist kein muelfahrer");
    }
    return 1;
    }
    }


    Sorry aber irgendwie hat das mit dem Quelltext nicht gefunzt

    Hey Leute bitte helft mir.
    Ich verzweifle so langsam


    Also ich habe eine Variabel so definiert:
    new Lohn[MAX_PLAYERS];


    In diese habe ich dann später so das "Geld" gespeichert:
    Lohn[playerid] += 3000;



    Wenn ich dann jedoch die Variabel so wieder zu hollen funktioniert es nicht:
    GivePlayerMoney(playerid,Lohn);


    Da kommt dann immer diese Fehlermeldung:
    error 035: argument type mismatch (argument 2)



    MIr ist klar des es Was mit dem Lohn zu tun hat aber irgendwie will mir nicht einfalle wie ich es lösen kann -.-


    Villeicht könnt ihr mir ja helfen

    Hey Leute ich wollte mal wissen wie ich den genauen Wert einer Variabel heraus finden, wenn diese Variabel sich unberechenbar verändert.


    Hört sich von mir mal wieder doof erklärt an.
    Also mein Beispiel ich habe eingestellt das per Variabel der Lohn von einem Spieler gespeichert wird. Nur jetzt weiß ich nicht wie ich es hin bekomme das der Wert der Variabel in einen GivePlayerMoney Befehl bekomme.


    Könnte mir das jemand erklären/tut verlinken(deutsch englisch wayne) oder sonstiges machen um mir zu Helfen?
    Vielen Dank schon mal


    Mfg Tool

    Hey ich habe jetzt ein neues Problem. Ich hatte zuerst aus Test zwecken jede Linie in einen eigenen Befehl eingetragen.
    Nun wollte ich das halt per Dialog mache und hab das was unter dem Befehl war einfach in den Dialog kopiert. (das höhrt sich glaub ich ziemlich komisch an :) )
    Hier das zeigt es aber glaub ich deutlicher.
    Also so sahen die Befehle aus:
    //Bus Linie 1
    if (strcmp("/linie",cmdtext,true,10) ==0) { new vehicleid = GetPlayerVehicleID(playerid); new model = GetVehicleModel(vehicleid); if(model == 431) { SendClientMessage(playerid,Hellrot,"Du beginnst nun deine Busfahrt!"); SetPlayerCheckpoint(playerid,2198.4290,1375.3420,10.7997,4); BUSJOBL1[playerid] = 1; } else { SendClientMessage(playerid,Rot,"Du bist in keinem Bus!"); return 1; } }
    //Beginnt Linie 2
    if (strcmp("/linie2",cmdtext,true,10) ==0) { new vehicleid = GetPlayerVehicleID(playerid); new model = GetVehicleModel(vehicleid); if(model == 431) { SendClientMessage(playerid,Hellrot,"Du beginnst nun deine Busfahrt!"); SetPlayerCheckpoint(playerid,2337.1418,1369.5001,10.3400,5.0); BUSJOBL2[playerid] = 1; } else { SendClientMessage(playerid,Rot,"Du bist in keinem Bus!"); return 1; } }



    und so sieht nun der Neue Befehl aus:
    if(strcmp("/linie",cmdtext,true,10) ==0) { ShowPlayerDialog(playerid,LINIE,DIALOG_STYLE_LIST,"Linien","Linie 1\nLinie 2","Akzeptieren", "Nein") ; return 1; }



    Und der Dazu gehörende Dialog:
    if(dialogid == LINIE) { if(response == 0) { return 1; } if(response == 1) { if(listitem == 1) { new vehicleid = GetPlayerVehicleID(playerid); new model = GetVehicleModel(vehicleid); if(model == 431) { SendClientMessage(playerid,Hellrot,"Du beginnst nun deine Busfahrt!"); SetPlayerCheckpoint(playerid,2198.4290,1375.3420,10.7997,4); BUSJOBL1[playerid] = 1; } else { SendClientMessage(playerid,Rot,"Du bist in keinem Bus!"); return 1; } } if(listitem == 2) { new vehicleid = GetPlayerVehicleID(playerid); new model = GetVehicleModel(vehicleid); if(model == 431) { SendClientMessage(playerid,Hellrot,"Du beginnst nun deine Busfahrt!"); SetPlayerCheckpoint(playerid,2337.1418,1369.5001,10.3400,5.0); BUSJOBL2[playerid] = 1; } else { SendClientMessage(playerid,Rot,"Du bist in keinem Bus!"); return 1; } } } }



    Im Dialog wird auch Linie 1 und 2 Angezeigt aber wenn ich es auswähle kommt nichts.
    Der Compiler gibt auch keine Fehlermeldungen aus.


    Was ist der Fehler ich hoffe ihr könnt mir helfen.
    Mfg Tool

    Hey ich habe folgendes Problem. Ich habe einen Checkpoint Job mit Bussen erstellt. Wenn ich den Job mache ist es kein Problem und alles Funktioniert auch so wie es soll. Wenn jedoch mein Kumpel auf den Server Joint klappt es nicht. Er kann die route anfangen bleibt jedoch gleich beim ersten Checkpoint "Stecken" Ich weis schon das er nicht mehr "Unfreezt" wird, jedoch weiß ich nicht warum, da es bei mir auch klappt.


    Hier ist der Komplette Code den ich für den Job genutzt habe.



    new BUSJOB[MAX_PLAYERS];


    forward busstop(playerid);


    if (strcmp("/linie",cmdtext,true,10) ==0)
    {
    new vehicleid = GetPlayerVehicleID(playerid);
    new model = GetVehicleModel(vehicleid);
    if(model == 431)
    {
    SendClientMessage(playerid,Hellrot,"Du beginnst nun deine Busfahrt!");
    SetPlayerCheckpoint(playerid,2198.4290,1375.3420,10.7997,4);
    BUSJOB[playerid] = 1;
    }
    else
    {
    SendClientMessage(playerid,Rot,"Du bist in keinem Bus!");
    return 1;
    }
    }


    if(BUSJOB[playerid] == 1)
    {
    SendClientMessage(playerid,Gruen,"Du bist nun an Haltestelle 1 und must 5 Sekunden warten");
    TogglePlayerControllable(playerid,0);
    SetTimer("busstop",5000,false);
    BUSJOB[playerid] = 2;
    SetPlayerCheckpoint(playerid,2073.7922,1485.1068,10.7694,4);
    return 1;
    }
    if(BUSJOB[playerid] == 2)
    {
    SendClientMessage(playerid,Gruen,"Du bist nun an Haltestelle 2 und must 5 Sekunden warten");
    TogglePlayerControllable(playerid,0);
    SetTimer("busstop",5000,false);
    BUSJOB[playerid] = 3;
    SetPlayerCheckpoint(playerid,2158.1321,1675.5658,10.8059,4);
    return 1;
    }
    if(BUSJOB[playerid] == 3)
    {
    SendClientMessage(playerid,Gruen,"Du bist nun an Haltestelle 3 und must 5 Sekunden warten");
    TogglePlayerControllable(playerid,0);
    SetTimer("busstop",5000,false);
    BUSJOB[playerid] = 4;
    SetPlayerCheckpoint(playerid,2040.1154,1589.4097,10.7672,4);
    return 1;
    }
    if(BUSJOB[playerid] == 4)
    {
    SendClientMessage(playerid,Gruen,"Du bist nun an Haltestelle 4 und must 5 Sekunden warten");
    TogglePlayerControllable(playerid,0);
    SetTimer("busstop",5000,false);
    BUSJOB[playerid] = 5;
    SetPlayerCheckpoint(playerid,2039.6827,1238.7311,10.7735,4);
    return 1;
    }
    if(BUSJOB[playerid] == 5)
    {
    SendClientMessage(playerid,Gruen,"Du bist nun an Haltestelle 5 und must 5 Sekunden warten");
    TogglePlayerControllable(playerid,0);
    SetTimer("busstop",5000,false);
    BUSJOB[playerid] = 6;
    SetPlayerCheckpoint(playerid,2299.1650,1190.8470,10.7717,4);
    return 1;
    }
    if(BUSJOB[playerid] == 6)
    {
    SendClientMessage(playerid,Gruen,"Du bist nun an Haltestelle 6 und must 5 Sekunden warten");
    TogglePlayerControllable(playerid,0);
    SetTimer("busstop",5000,false);
    BUSJOB[playerid] = 7;
    SetPlayerCheckpoint(playerid,2430.1389,1288.6582,10.7695,4);
    return 1;
    }
    if(BUSJOB[playerid] == 7)
    {
    SendClientMessage(playerid,Gruen,"Du bist nun an Haltestelle 7 und must 5 Sekunden warten");
    TogglePlayerControllable(playerid,0);
    SetTimer("busstop",5000,false);
    BUSJOB[playerid] = 8;
    SetPlayerCheckpoint(playerid,2339.2297,1375.9799,10.7757,4);
    return 1;
    }
    if(BUSJOB[playerid] == 8)
    {
    SendClientMessage(playerid,Gruen,"Du bist nun an der Endhaltestelle und bekommst 3000");
    GivePlayerMoney(playerid,3000);
    BUSJOB[playerid] = 0;
    DisablePlayerCheckpoint(playerid);
    return 1;
    }
    return 1;
    }
    public busstop(playerid)
    {
    SendClientMessage(playerid,Gruen,"Du kannst nun weiter Fahren");
    TogglePlayerControllable(playerid,1);
    return 1;
    }


    Beim Compielen kommt auch kein error oder sonstiges es Funktioniert also alles bei mir so wie es soll nur halt bei meinem Kumpel nicht.

    Hey leute ich habe nach diesem Thread Müllcheckpoint einen Busfahrer Job erstellt. Jetzt möchte ich wissen ob es möglich ist das Trinkgeld nach der Anzahl der Personen zu berechnen und das möglich kurz xD.


    So soll es bei 1 Person zwichen 10 und 100$ Trinkgeld und bei 2 zwichen 20 und 200$ geben usw. Bei keiner Person natürlich keins.
    Ist das irgendwie machbar?


    Ps. Ich weiß das Checkpointe auch per enum gehen, was ich nachher wenn ich wieder an meinem Script sitze auch ausprobieren werde.