Freezen beim Porten

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
  • Hallo eine kleine Frage wie muss ich das machen


    wenn ich zb: gotobsn machen und soll dann 10 sek gefreeze sein danach wieder enfreeze


    ihr mein Beispiel:
    if(strcmp(cmd, "/gotobsn", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pMember] == 0 || PlayerInfo[playerid][pLeader] == 0) //nur Präsi und SS kann in den Teleport
    if(GetPlayerState(playerid) == 1 && IsPlayerInRangeOfPoint(playerid,3.0,-1989.49877930,1117.92492676,54.11797714)) // Wo er stehen soll
    {
    SetPlayerInterior(playerid, 0); //Interior
    SetPlayerPos(playerid,353.57519531,132.83886719,1624.32897949); // Wo er hinkommt
    SetPlayerFacingAngle(playerid,281.0466);
    GameTextForPlayer(playerid, "~G~Sie sind nun am BSN.", 5000, 1);
    }
    }
    return 1;
    }


    /edit Pawno Code hinzugefügt

  • forward freezetimer(playerid);
    public freezetimer(playerid)
    {
    TooglePlayerControlable(playerid, false);
    KillTimer(freeze);
    return 1;
    }


    // Im Befehl
    new freeze;
    freeze =SetTimer("freezetimer", 10000, 0);
    TooglePlayerControlable(playerid, true);



    So ist aber ungetestet

  • Ich meine es ja so, dass der Spieler beim Command gefreezed wird und der Timer ausgelöst wird, nachdem der Timer aufgehört hat, soll er entfreezed werden :D

  • forward unfeeze(playerid);


    if(strcmp(cmd, "/gotobsn", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pMember] == 0 || PlayerInfo[playerid][pLeader] == 0) //nur Präsi und SS kann in den Teleport
    if(GetPlayerState(playerid) == 1 && IsPlayerInRangeOfPoint(playerid,3.0,-1989.49877930,1117.92492676,54.11797714)) // Wo er stehen soll
    {
    SetPlayerInterior(playerid, 0); //Interior
    SetPlayerPos(playerid,353.57519531,132.83886719,1624.32897949); // Wo er hinkommt
    SetPlayerFacingAngle(playerid,281.0466);
    GameTextForPlayer(playerid, "~G~Sie sind nun am BSN.", 5000, 1);
    SetTimerEx("unfreeze", 10000,0,"d",playerid);
    TogglePlayerControllable(playerid,0);
    }
    }
    return 1;
    }


    public unfreeze(playerid)
    {
    TogglePlayerControllable(playerid,1);
    return 1;
    }


    So sollte es gehen.