Visum erstellen

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 Leute, ich brauche euere hilfe.
    Wie erstelle ich ein Visum mit timer?!
    Sprich: ich geh ins pd gebe /visum ein das es irgendwie nur 2std gültig ist.
    das wenn die 2std weg sind das es auch bei z.b. /showvisum weg ist?


    Könnt ihr mir dabei helfen? sehr nett von euch :)


    Mfg [CCR]KingCan

  • erstell ein timer in einer varibale(new timer...blablabla), spiel den timer aus, wenn du z.b. /visum eingibst, zeit auf 10 minuten, muss ich ausrechnen wieviel millisekunden das sind,
    wenn der Timer durchgelaufen ist, killst du den timer, und stellst dementsprechend dein wert oder das was du haben willst, im Public ein. halt der ablauf des visums



    mfg

    526C4Hj.png Mit freundlichen Grüßen,
    Noneatme

  • ahh, vielen dank. Werde es probieren :)


    //EDIT


    habs mal so gemacht komme net weiter ...


    new visumtimer;
    public GameModeExitFunc()
    {
    KillTimer(unjailtimer);
    visumtimer = SetTimer("visumtimer", 60000, 1);


    und weiter? :D


    Kann mir bitte einer dabei helfen? ...

    2 Mal editiert, zuletzt von [CCR]KingCaN ()

  • -Timer erstellen
    -CMD erstellen
    -Abfrage erstellen, ob der Spieler im Radius von dem PD ist
    -Timer starten
    -Timer nach 2Stunden killen, und am besten eine Nachricht schicken, dass es abgelaufen ist


    Du kannst durch ein Bool mit dem Wert 1 / 0 den Status abänder, ob der Spieler ein Visum hat.


    Edit:
    D.h. du definierst es bsp so :


    new visum;



    Und "Abfragen" kannst du es dann so :


    if visum = 0;
    SendClientMessage(playerid, Color_XYZ,"Dein Visum ist abgelaufen, bitte begib dich sofort wieder ausserhalb der Zone !");

    Einmal editiert, zuletzt von Application ()

  • forward VisumTimer();


    SetTimer("VisumTimer",60000,1); //Minuten Ablauf


    public VisumTimer()
    {
    if(IsPlayerConnected(playerid)) //verbunden ?
    {
    if(PlayerInfo[playerid][Visum] == 1) // Überprüft ob visum vorhanden
    {
    if(PlayerInfo[playerid][VisumZeit] != 0) // überprüft restzeit
    {
    PlayerInfo[playerid][VisumZeit] --; //Zeit läuft ab
    }
    else
    {
    PlayerInfo[playerid][Visum] = 0; // Visum ist nun weg
    }
    }



    if(strcmp(cmd, "/2stdvisum", true) == 0) //2std visum
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerToPoint(2.0,playerid,xxx,xxx,xxx)) //Position wo man das Visum kaufen kann
    {
    SendClientMessange(playerid,FARBE,"Du hast ein 2Std. Visum gekauft.") //Narchicht (farbe nicht vergessen)
    PlayerInfo[playerid][Visum] = 1; // 1 für gekauft
    PlayerInfo[playerid][VisumZeit] = 120; //Zeit in Minuten
    }
    else
    {
    SendClientMessange(playerid,FARBE,"Du bist nicht in der Stadthalle.") //Narchicht (farbe nicht vergessen)
    }
    }
    return 1;
    }


    hier abe ich grad im editor geschrieben keine garantie obs klappt sollte aber ;) solltest den rest eig selber können oder fehler finden


    //edit Timer Fehler verbessert
    //edit Klammerfehler

    Du hast ein Design und benötigst einen Coder ? PM me !
    Referenzen sind vorhanden unter diesem Link.
    User Control Panel by DiZZerZ: hier klicken
    GTABlue WBB³ Design nur 5€: hier klicken

    Einmal editiert, zuletzt von DiZZerZ ()

  • leicht gesagt als gemacht^^
    was ist daS?
    kannst du mir ein beispiel davon machen?
    wäre super nett <3

  • public VisumTimer()
    {
    if(IsPlayerConnected(playerid)) //verbunden ?
    {
    else if(PlayerInfo[playerid][Visum] == 1; // Überprüft ob visum vorhanden
    {
    else if(PlayerInfo[playerid][VisumZeit] != 0) // überprüft restzeit
    {
    else if(PlayerInfo[playerid][VisumZeit] --; //Zeit läuft ab
    }
    else
    {
    if(PlayerInfo[playerid][Visum] = 0; // Visum ist nun weg
    }
    }
    }
    }
    return 1;
    }


    meiste Error's sind hier ...


    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(3511) : warning 213: tag mismatch
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(4272) : warning 213: tag mismatch
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(9368) : warning 213: tag mismatch
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(9380) : warning 213: tag mismatch
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(9405) : warning 204: symbol is assigned a value that is never used: "carid"
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(14596) : warning 204: symbol is assigned a value that is never used: "string"
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(17220) : error 017: undefined symbol "Visum"
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(17221) : error 017: undefined symbol "VisumZeit"
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(15386) : warning 204: symbol is assigned a value that is never used: "plname"
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(39422) : warning 219: local variable "string" shadows a variable at a preceding level
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(39435) : warning 219: local variable "string" shadows a variable at a preceding level
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(39448) : warning 219: local variable "string" shadows a variable at a preceding level
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(39461) : warning 219: local variable "string" shadows a variable at a preceding level
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(39474) : warning 219: local variable "string" shadows a variable at a preceding level
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(39487) : warning 219: local variable "string" shadows a variable at a preceding level
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(40209) : error 017: undefined symbol "playerid"
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(40211) : error 029: invalid expression, assumed zero
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(40211) : warning 215: expression has no effect
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(40211) : error 001: expected token: ";", but found "if"
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(40211) : error 017: undefined symbol "playerid"
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(40211) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    7 Errors.

    Einmal editiert, zuletzt von [CCR]KingCaN ()


  • public VisumTimer()
    {
    for (new i; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i)) //verbunden ?
    {
    else if(PlayerInfo[i][Visum] == 1; // Überprüft ob visum vorhanden
    {
    else if(PlayerInfo[i][VisumZeit] != 0) // überprüft restzeit
    {
    else if(PlayerInfo[i][VisumZeit] --; //Zeit läuft ab
    }
    else
    {
    if(PlayerInfo[i][Visum] = 0; // Visum ist nun weg
    }
    }
    }
    }
    }
    return 1;
    }


    so müsste es gehen

  • vielen dank das du schnell antwortet hast aber ..


    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(3511) : warning 213: tag mismatch
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(4272) : warning 213: tag mismatch
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(9368) : warning 213: tag mismatch
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(9380) : warning 213: tag mismatch
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(9405) : warning 204: symbol is assigned a value that is never used: "carid"
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(14596) : warning 204: symbol is assigned a value that is never used: "string"
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(17220) : error 017: undefined symbol "Visum"
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(17221) : error 017: undefined symbol "VisumZeit"
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(15386) : warning 204: symbol is assigned a value that is never used: "plname"
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(39422) : warning 219: local variable "string" shadows a variable at a preceding level
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(39435) : warning 219: local variable "string" shadows a variable at a preceding level
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(39448) : warning 219: local variable "string" shadows a variable at a preceding level
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(39461) : warning 219: local variable "string" shadows a variable at a preceding level
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(39474) : warning 219: local variable "string" shadows a variable at a preceding level
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(39487) : warning 219: local variable "string" shadows a variable at a preceding level
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(40213) : error 029: invalid expression, assumed zero
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(40213) : warning 215: expression has no effect
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(40213) : error 001: expected token: ";", but found "if"
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(40213) : error 017: undefined symbol "Visum"
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(40213) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    6 Errors.


    der befehl dazu


    if(strcmp(cmd, "/2stdvisum", true) == 0) //2std visum
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerToPoint(90.0,playerid,1212.6320,-902.5142,42.9222)) //Position wo man das Visum kaufen kann
    {
    SendClientMessage(playerid,COLOR_GREY,"Du hast ein 2Std. Visum gekauft."); //Narchicht (farbe nicht vergessen)
    PlayerInfo[playerid][Visum] = 1; // 1 für gekauft
    PlayerInfo[playerid][VisumZeit] = 120; //Zeit in Minuten
    }
    else
    {
    SendClientMessage(playerid,COLOR_GREY,"Du bist nicht in der Stadthalle."); //Narchicht (farbe nicht vergessen)
    }
    }
    return 1;
    }

  • Der Spieler wird doch automatisch auf das Objekt gezogen, deshalb muss man garnicht playerid darein schreiben, oder nicht ?



    if(IsPlayerConnected(playerid))
    {
    if(PlayerToPoint(90.0,1212.6320,-902.5142,42.9222))

  • jo, aber t.dem 6Errors ...

    Einmal editiert, zuletzt von [CCR]KingCaN ()

  • Du darfst doch bei einer if Schleife am ende kein ";" machen -.-


    Bei der Zeile wo der string nicht definiert ist (siehe Error)
    mach mal



    new string[256];


    Preceding level bedeutet das string bereits definiert ist, benenn es bei den angegeben Zeilen einfach um.
    z.b new string[256]; in new stringx[256];

  • public VisumTimer()
    {


    for (new i; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i)) //verbunden ?
    {
    else if(PlayerInfo[i][Visum] == 1) // Überprüft ob visum vorhanden
    {
    else if(PlayerInfo[i][VisumZeit] != 0) // überprüft restzeit
    {
    else if(PlayerInfo[i][VisumZeit] --; //Zeit läuft ab
    }
    else
    {
    if(PlayerInfo[i][Visum] = 0; // Visum ist nun weg
    }
    }
    }
    }
    }
    return 1;
    }


    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(2695) : error 029: invalid expression, assumed zero
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(2695) : warning 215: expression has no effect
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(2695) : error 001: expected token: ";", but found "if"
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(2695) : error 017: undefined symbol "Visum"
    C:\Program Files (x86)\Rockstar Games\GTA San Andreas\gamemodes\CrimeCity.pwn(2695) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    4 Errors.


    wo soll ich das mit public hinzufügen? unter was halt?
    ja das mit string teile sind weg, danke

    Einmal editiert, zuletzt von [CCR]KingCaN ()

  • else if(PlayerInfo[i][VisumZeit] --;


    Das geht nicht, ";" muss weg!!!
    Außerdem hast du eine "}" zu viel, weg machen.


    Was der Code bezwecken soll bleibt mir ein rätsel.


    Edit:
    Achja visum muss auch definiert werden:

    new PlayerInfo[i][Visum];