Beiträge von Jay_Carnivora

    Hallo Leute,
    der /kick Befehl wird von SAMP ja jetzt zu schnell ausgeführt, am besten löse ich das ja jetzt mit Timern.
    Habe bloß keine Idee wie das gehen soll...
    Bitte um Hilfe.


    Mein /kick Befehl:

    Spoiler anzeigen
    ocmd:kick(playerid, params[])
    {
    if(!IsPlayerAnAdmin(playerid, 1))return echo(playerid, COLOR_RED, "Du hast keine Rechte für diesen befehl!");
    new pID, reason[128], string[128];
    if(sscanf(params, "us", pID, reason))return echo(playerid, COLOR_YELLOW, "Benutze: /kick <Spielername/ID> <Grund>");
    {
    if(!IsPlayerConnected(pID))return echo(playerid, COLOR_RED, "Dieser Spieler ist nicht online!");
    format(string, 128, "AdmCmd: %s wurde von %s gekickt! Grund: %s", GetName(pID), GetName(playerid), reason);
    echoall(COLOR_ADMCMD, string);
    Kick(pID);
    return 1;
    }
    }

    Hallo Leute,
    bin grade auf rCmd aufmerksam geworden, dachte mit coole sache, benutz ich es mal.
    Doch wenn ich meinen Befehl eingebe kackt der Server ab...


    Script:

    Spoiler anzeigen

    rCmd["us"]->kick(playerid, success, &pID, reason[])
    {
    if(!IsPlayerAnAdmin(playerid,1))return echo(playerid, COLOR_RED, "Du hast nicht genügend Rechte für diesen Befehl!");
    if(!success)return echo(playerid, COLOR_YELLOW, "Benutze: /kick <Spielername/ID> <Grund>");
    if(pID == INVALID_PLAYER_ID)return echo(playerid, COLOR_RED, "Achtung: ungültiger Spieler!");
    Kick(pID);
    return 1;
    }

    Mach ich ja ^^


    Spoiler anzeigen
    stock SaveAccount(playerid)
    {
    new pName[MAX_PLAYER_NAME], path[200];
    GetPlayerName(playerid, pName, sizeof(pName));
    format(path, 200, "/accounts/%s", pName);
    dini_IntSet(path, "level", GetPlayerScore(playerid));
    dini_IntSet(path, "money", GetPlayerMoney(playerid));
    dini_IntSet(path, "skin", GetPlayerSkin(playerid));
    dini_IntSet(path, "gender", pInfo[playerid][gender]);
    dini_IntSet(path, "age", pInfo[playerid][age]);
    dini_IntSet(path, "faction", pInfo[playerid][faction]);
    dini_IntSet(path, "leader", pInfo[playerid][leader]);
    dini_IntSet(path, "adminrang", pInfo[playerid][adminrang]);
    dini_IntSet(path, "banned", pInfo[playerid][banned]);
    dini_IntSet(path, "driving", pInfo[playerid][driving]);
    dini_IntSet(path, "flying", pInfo[playerid][driving]);
    dini_IntSet(path, "sailing", pInfo[playerid][driving]);
    dini_IntSet(path, "weapon", pInfo[playerid][driving]);
    dini_IntSet(path, "fishing", pInfo[playerid][driving]);
    pInfo[playerid][loggedin] = 0;
    }

    Ihr seht ich habe es heute echt mit dem Scripten. :P


    Wenn ich mich registriere werden nur Password, Alter, Geschlecht gespeichert...
    Mir liegt die Lösung wirklich auf der Zunge, habe bestimmt beim Registrieren was falsch gemacht, was eig. logisch is...


    Hier mal der Scriptteil:

    Spoiler anzeigen
    stock RegisterAccount(playerid)
    {
    new pName[MAX_PLAYER_NAME], path[200];
    GetPlayerName(playerid, pName, sizeof(pName));
    format(path, 200, "/accounts/%s.ini", pName);
    pInfo[playerid][level] = GetPlayerScore(playerid);
    pInfo[playerid][money] = GetPlayerMoney(playerid);
    pInfo[playerid][skin] = GetPlayerSkin(playerid);
    pInfo[playerid][gender] = dini_Int(path, "gender");
    pInfo[playerid][age] = dini_Int(path, "age");
    pInfo[playerid][faction] = dini_Int(path, "faction");
    pInfo[playerid][leader] = dini_Int(path, "leader");
    pInfo[playerid][adminrang] = dini_Int(path, "adminrang");
    pInfo[playerid][banned] = dini_Int(path, "banned");
    pInfo[playerid][driving] = dini_Int(path, "driving");
    pInfo[playerid][flying] = dini_Int(path, "flying");
    pInfo[playerid][sailing] = dini_Int(path, "sailling");
    pInfo[playerid][weapon] = dini_Int(path, "weapon");
    pInfo[playerid][fishing] = dini_Int(path, "fishing");
    pInfo[playerid][loggedin] = 1;
    }

    Hallo Leute,
    bin grade an nem Login/Register System dran und wollte schon oben im Script meine Dialoge definen.
    Habe Monte nich mehr gescriptet und mache wohl irgendwas falsch...


    Errorcode:

    Code
    C:\Users\Tobias\Desktop\LYD-RP\gamemodes\lyd-rp.pwn(103) : error 036: empty statementC:\Users\Tobias\Desktop\LYD-RP\gamemodes\lyd-rp.pwn(107) : error 036: empty statementC:\Users\Tobias\Desktop\LYD-RP\gamemodes\lyd-rp.pwn(289) : error 036: empty statementC:\Users\Tobias\Desktop\LYD-RP\gamemodes\lyd-rp.pwn(293) : error 036: empty statementC:\Users\Tobias\Desktop\LYD-RP\gamemodes\lyd-rp.pwn(307) : error 036: empty statementC:\Users\Tobias\Desktop\LYD-RP\gamemodes\lyd-rp.pwn(319) : error 035: argument type mismatch (argument 3)C:\Users\Tobias\Desktop\LYD-RP\gamemodes\lyd-rp.pwn(320) : error 036: empty statementC:\Users\Tobias\Desktop\LYD-RP\gamemodes\lyd-rp.pwn(379) : error 036: empty statementC:\Users\Tobias\Desktop\LYD-RP\gamemodes\lyd-rp.pwn(384) : error 036: empty statementC:\Users\Tobias\Desktop\LYD-RP\gamemodes\lyd-rp.pwn(396) : error 036: empty statementC:\Users\Tobias\Desktop\LYD-RP\gamemodes\lyd-rp.pwn(407) : error 036: empty statementC:\Users\Tobias\Desktop\LYD-RP\gamemodes\lyd-rp.pwn(418) : error 036: empty statement


    Textstelle:

    Spoiler anzeigen
    #define ShowPlayerRegisterDialog1 ShowPlayerDialog(playerid, REGISTER_DIALOG1, DIALOG_STYLE_INPUT, "Account nicht gefunden", "Leider konnten wir deinen Accoutn nicht in der Datenbank finden.\nWir bitten dich bei uns zu registrieren indem du untern\neinfach dein gewünschtes Passwort eingibst und auf 'OK' drückst!", "OK", "Abbrechen");
    #define ShowPlayerRegisterDialog2 ShowPlayerDialog(playerid, REGISTER_DIALOG2, DIALOG_STYLE_LIST, "Wie ist dein Geschlecht?", "Männlich\r\nWeiblich", "Weiter", "Abbrechen");
    #define ShowPlayerRegisterDialog3 ShowPlayerDialog(playerid, REGISTER_DIALOG3, DIALOG_STYLE_INPUT, "Wie ist dein Alter?", "Verrate uns bitte dein Alter.", "Weiter", "Abbruch");
    #define ShowPlayerRegisterDialog4 ShowPlayerDialog(playerid, REGISTER_DIALOG4, DIALOG_STYLE_MSGBOX, "Registriert", "herzlichen Glückwunsch!\nDu hast dich erfolgreich bei uns registriert.\nWir wünschen dir viel Spaß bei uns!", "Spawnen", "");
    #define ShowPlayerNopwDialog1 ShowPlayerDialog(playerid, NOPW_DIALOG1, DIALOG_STYLE_INPUT, "Passwortlänge", "Dein Passwort muss mehr als 6 Zeichen haben.", "Zurück", "Abbrechen");
    #define ShowPlayerNopwDialog2 ShowPlayerDialog(playerid, NOPW_DIALOG2, DIALOG_STYLE_MSGBOX, "Passwort?", "Du müsstest dein Passwort eingeben...", "Zurück", "Abbrechen");
    #define ShowPlayerWrongpwDialog ShowPlayerDialog(playerid, WRONGPW_DIALOG, DIALOG_STYLE_MSGBOX, "Falsches Passwort", "Du hast ein falsches Passwort eingegeben", "Zurück", "Abbrechen");
    #define ShowPlayerLoginDialog ShowPlayerDialog(playerid, LOGIN_DIALOG, DIALOG_STYLE_PASSWORD, "Account gefunden", "Wir konnten deinen Account in unserer Datenbank finden.\nBitte geben unten dein Passwort ein in drücke auf 'OK'.", "OK", "Abbrechen");

    Heey, ich überlege mir das Spiel WarZ zu holen. Ich habe jedoch Angst das es bei mir nicht läuft und is so ca. 20€ aus dem Fenster geworfen habe.
    aaaaber ich habe gesehn das man die Grafik on WarZ abnormal tief stellen kann, was mir wieder Hoffnung gibt. ^^


    Ich geb euch ma die Daten von meinem Laptop, würde mich über eure Meinung freuen.


    Daten:


    Intel Core i5 CPU M 450 @ 2.40GHz - Prozessor
    4,0GB - Ram
    NVIDIA GeForce 310M - Grafikkarte
    Paar Infos zur Grafikkarte - Klicken

    Also das war so:


    Ich hatte n Timer mit 6 Sekunden drinne.
    Ich connectete auf den Server doch mit wurde sofort das Login GUI angezeigt, ich wartete kurz und daraufhin wurde der Loginscreen gewechselt und das Login Gui ein 2x aufgemacht.

    Ich hatte grade n Timer drinne und da hat er dann dern Loginscreen gewechselt.
    Nur war der Timer verbuggt, mit dem SAMP Wiki komme ich nicht weiter und ich finde hier keine Tutorials...


    if(IsPlayerNPC(playerid))return 1;
    new PlayerData[128];
    format(PlayerData, sizeof(PlayerData), "/Accounts/%s.ini", PlayerName(playerid));
    if(dini_Exists(PlayerData))
    {
    ShowPlayerDialog(playerid, LOGIN_DIALOG, DIALOG_STYLE_PASSWORD, "Login", "{00FF00}Account gefunden.\n{FFFFFF}Bitte logge dich jetzt ein.", "LOGIN", "ABBR.");
    SetPlayerLoginScreen(playerid);
    }
    else
    {
    ShowPlayerDialog(playerid, REGISTER_DIALOG, DIALOG_STYLE_INPUT, "Registrierung", "{FF0000}Account nicht gefunden.\n{FFFFFF}Bitte registriere dich jetzt.", "REGISTER", "ABBR.");
    }
    SendClientMessage(playerid, BLUE, ">_____ Dinamite-Life V1_____<");
    SendClientMessage(playerid, WHITE, "Willkommen auf Dinamite-Life!");
    SendClientMessage(playerid, WHITE, "Wir wünschen dir viel Spaß bei uns!");
    return 1;

    Ich habe n stock gemacht:
    stock SetPlayerLoginScreen(playerid)
    {
    SetPlayerPos(playerid, 1172.0696, 1207.8075, 67.4315+10);
    SetPlayerCameraPos(playerid, 1172.0696, 1207.8075, 67.4315);
    SetPlayerCameraLookAt(playerid, 1171.5370, 1206.9558, 67.1615);
    }
    Den dann halt beim Login Dialog reingemacht "SetPlayerLoginScreen(playerid);".
    Doch es geht immernoch nich. :(


    Ich weiß echt nich weiter. ^^

    Ich möchte den User ja ein paar Sekunden warten lassen und dann erst die Dialoge setzten, doch ich habe noch nie was mit Timern gemacht, dahher habe ich kein Plan davon.


    Habe ich, doch es wird trotzdem der Strand gezeigt...


    e# Ich habe de Coords schon unter OnPlayerConnect und OnPlayerRequestClass gesetzt, es wird immer der Strand gezeigt...