Hilfe bei Stocks

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 liebe Community,
    ich wollte einen public mit Timer und Stocks erstellen.
    Folgendes:


    forward Looks();


    public OnGameModeInit()
    {
    SetTimer("Looks",10000,1);
    return 1;
    }


    public Looks()
    {
    new var = random(3);
    switch(var)
    {
    case 0: Look1();
    case 1: Look2();
    case 2: Look3();
    }
    }
    //Stocks


    stock Look1(playerid)
    {
    SetPlayerPos(playerid,435.3562,-1451.0004,45.5987);
    SetPlayerCameraPos(playerid, 400.2882,-2187.9363,97.2565);
    SetPlayerCameraLookAt(playerid,435.3562,-1451.0004,45.5987);
    return 1;
    }


    stock Look2(playerid)
    {
    SetPlayerPos(playerid,1553.4792,-1677.2523,16.1953);
    SetPlayerCameraPos(playerid,1403.3521,-1658.8394,100.5128);
    SetPlayerCameraLookAt(playerid, 1553.4792,-1677.2523,16.1953);
    return 1;
    }


    stock Look3(playerid)
    {
    SetPlayerPos(playerid, 1172.0725,-1318.8977,15.3932 );
    SetPlayerCameraPos(playerid, 1306.6486,-1417.7218,69.2522);
    SetPlayerCameraLookAt(playerid, 1172.0725,-1318.8977,15.3932);
    return 1;
    }


    Aber ich glaube das dass nicht geht wegen den warnings :
    C:\Users\Lukas Gamer\Desktop\Sa-MP 0.3e\gamemodes\Untitled.pwn(283) : warning 202: number of arguments does not match definition
    C:\Users\Lukas\Desktop\Sa-MP 0.3e\gamemodes\Untitled.pwn(284) : warning 202: number of arguments does not match definition
    C:\Users\Lukas \Desktop\Sa-MP 0.3e\gamemodes\Untitled.pwn(285) : warning 202: number of arguments does not match definition
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    4 Warnings.


    Weis jemand wie man die Stocks so ausgeben kann im Public? Oder wie ich die warnings beheben kann ?
    MFG

  • Du musst ja auch immer den Parameter playerid übergeben, sprich du musst das so schreiben:


    forward Looks(playerid);


    SetTimerEx("Looks",10000,1,"i",playerid);


    public Looks(playerid)
    {
    new var = random(3);
    switch(var)
    {
    case 0: Look1(playerid);
    case 1: Look2(playerid);
    case 2: Look3(playerid);
    }
    return 1;
    }


    mfg. :thumbup:

    ast2ufdyxkb1.png


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

  • Erstelle oben eine neue variable:
    new TimerID[MAX_PLAYERS];
    Und unter OnPlayerConnect:
    TimerID[playerid] = SetTimerEx("Looks",10000,1,"i",playerid);
    Wenn der Spieler gespawnt ist killst du den Timer.
    KillTimer(TimerID[playerid]);


    Das Problem ist das du die playerid, die das sehen soll, übergeben musst und das kannst du nicht in OnGameModeInit machen.