Bin am verzweifeln :( Autos laden nicht Warum nur ?

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
  • Àlso ich hab
    new HappyHour;
    Das Happy Hour gestartet wird mit Timer und so...
    So jetzt hab ich:
    if(HappyHour == 1)//1 = Happy Hour ist an 0 hab ich unten noch
    {
    total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/H_trains.txt");
    total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/H_pilots.txt");
    ...
    Aber der Gamemode wird immer ohne Happy Hour gestartet Warum nur ???
    Ist doch alles richtig oder ?

  • Hallo,


    Ich glaube es liegt daran, dass die Variable beim Start des Gamemodes auf 0 gesetzt wird. Du must bei public OnGamemodeInit einfach die Variable auf 1 setzen, weil ja abgefragt wird ob die Variable auf 1 ist.


    HappyHour = 1;


    Um das noch hübscher zu machen, kannst du es einrichten, dass du HappyHour mittels eines Befehls wieder deaktivieren kannst.


    Gruß. Brandon.

  • forward HappyHourBeta(playerid);
    new HappyHour;
    new HappyHourTimer;


    OnGameModeInIt
    HappyHourTimer = SetTimer("HappyHourBeta", 3600000, true);


    Public
    public HappyHourBeta(playerid)
    {
    if(HappyHour == 0)
    {
    HappyHour = 1;
    new string[256];
    new string2[256];
    format(string,sizeof(string),"Happy Hour startet. 250 Panzer und 10 Hunter werden in San Andreas platziert.", playerid);
    format(string2,sizeof(string2),"Der Server restartet.", playerid);
    SendClientMessageToAll(0xFF0000FF,string);
    SendClientMessageToAll(0xFF0000FF,string2);
    SendRconCommand("gmx");
    printf("-------->Happy Hour Startet.<--------");
    SendRconCommand("mapname |>->Happy Hour<-<|");
    HappyHour = 1;
    }
    return 1;
    }


  • GMX = server restart/naechster gamemode aus der ini wird geladen = nach gmx kommt nur noch OnGameModeExit und das wars mit dem Gamemode. Selbstverstaendlich ist danach nichts mehr mit HappyHour.

  • So dann schaun wir mal.


    Also zu guter Erst, ist es bei dieser Funktion sinnfrei die Variable "playerid" mit einzubeziehen, da du ja sowieso keine Spieler-ID bei HappyHourBeta brauchst.


    forward HappyHourBeta();


    HappyHourTimer = SetTimer("HappyHourBeta", 3600000, true);

    Da ist alles korrekt soweit, aber wenn du playerid als spezielle Variable gebraucht hättest, dann hättest du auf SetTimerEx(...) zurückgreifen müssen, ist hier aber nicht nötig.


    Dann nochmal ersetzen:


    public HappyHourBeta()
    {
    if(HappyHour == 0)
    ...


    Aber wie mein Vorposter schon sagte, hat das wenig mit dem Laden von Fahrzeugen zu tun, da GMX der Serverrestart ist. Das must du nochmal überarbeiten glaub ich.


    Gruß. Lincoln.