Beiträge von Oktabius

    Seit ihr alle blind^^?



    public OnPlayerCommandText(playerid, cmdtext[])
    {
    new val[128],cmd[256],idx,plname[100],chkqry[100],plcnt,insqry[100],pwcnt,selqry[255],line[1024];
    cmd = strtok(cmdtext,idx);
    // Registration
    if(strcmp("/reg", cmd, true) == 0)
    {
    val = strvalue(cmdtext,idx);
    if(!val[0])
    {
    // Es wurde kein Parameter angegeben
    SendClientMessage(playerid,0xFFFFFFFF,"Benutzung: /reg [PASSWORT]");
    }
    else
    {
    // Parameter wurde angegeben
    // Spielername herausfinden
    GetPlayerName(playerid, plname, sizeof(plname));
    // Überprüfen ob Spieler schon existiert
    format(chkqry,sizeof(chkqry),"SELECT * FROM user WHERE name='%s'", plname);
    samp_mysql_query(chkqry);
    samp_mysql_store_result();
    plcnt=samp_mysql_num_rows();
    if(plcnt == 1)
    {
    // Spieler existiert bereits
    // Aufforderung zum einloggen anzeigen!
    SendClientMessage(playerid, FARBE_ROT, "Es existiert bereits ein Account mit diesem Namen!");
    SendClientMessage(playerid, FARBE_ROT, "Bitte /login [PASSWORT] benutzen!");
    }
    else
    {
    // Spieler existiert nicht
    // Spieler registrieren
    samp_mysql_real_escape_string(plname, plname);
    format(insqry,sizeof(insqry),"INSERT INTO user (name,pass,mail, money) VALUES ('%s',MD5('%s'), 'none', '500')", plname, val[0]);
    samp_mysql_query(insqry);
    // ID auslesen
    format(selqry,sizeof(selqry),"SELECT * FROM user WHERE name='%s'", plname);
    samp_mysql_query(selqry);
    samp_mysql_store_result();
    samp_mysql_fetch_row(line);
    new SpDv[30][50];
    split(line, SpDv, '|');
    // Konto eröffnen
    format(insqry,sizeof(insqry),"INSERT INTO konten (playerid,betrag) VALUES ('%s','100')", SpDv[0]);
    samp_mysql_query(insqry);
    // Registration fertig
    SendClientMessage(playerid, FARBE_ROT, "Registration erfolgreich!");
    // Aufforderung zum einloggen anzeigen
    SendClientMessage(playerid, FARBE_ROT, "Benutzen Sie /login [PASSWORT] um sich einzuloggen!");
    }
    }
    return 1;
    }
    // Login
    if(strcmp("/login", cmd, true) == 0)
    {
    val = strvalue(cmdtext,idx);
    if(!val[0])
    {
    // Es wurde kein Parameter angegeben
    SendClientMessage(playerid,0xFFFFFFFF,"Benutzung: /login [PASSWORT]");
    }
    else
    {
    //Parameter wurde angegeben
    // Spielername herausfinden
    GetPlayerName(playerid, plname, sizeof(plname));
    // Überprüfen ob Spieler schon registriert ist
    format(chkqry,sizeof(chkqry),"SELECT * FROM user WHERE name='%s'", plname);
    samp_mysql_query(chkqry);
    samp_mysql_store_result();
    plcnt=samp_mysql_num_rows();
    if(plcnt == 1)
    {
    // Spieler ist registriert
    // Prüfen ob das Passwort stimmt
    format(chkqry,sizeof(chkqry),"SELECT * FROM user WHERE (name='%s' AND pass=MD5('%s'))", plname, val[0]);
    samp_mysql_query(chkqry);
    samp_mysql_store_result();
    pwcnt=samp_mysql_num_rows();
    if(pwcnt == 1)
    {
    // Passwort stimmt
    SendClientMessage(playerid, FARBE_ROT, "Sie sind erfolgreich eingeloggt!");
    // Loginvariablen setzen
    SpielerInfo[playerid][login] = 1;
    // Geld setzten
    format(chkqry,sizeof(chkqry),"SELECT * FROM user WHERE name='%s'", plname);
    samp_mysql_query(chkqry);
    samp_mysql_store_result();
    new line[1024];
    samp_mysql_fetch_row(line);
    new SpDv[30][50];
    split(line, SpDv, '|');
    SpielerInfo[playerid][startmoney] = strval(SpDv[5]);
    SpielerInfo[playerid][dbid] = strval(SpDv[0]);
    //SetPlayerMoney(playerid, SpielerInfo[playerid][startmoney]);
    new testmoney[255];
    testmoney = "500";
    SetPlayerMoney(playerid,SpielerInfo[playerid][startmoney]);
    new ausg[255];
    format(ausg,sizeof(ausg),"Spielergeld: %d",SpielerInfo[playerid][startmoney]);
    print(ausg);
    }
    else
    {
    // Passwort stimmt nicht
    SendClientMessage(playerid, FARBE_ROT, "Das Passwort war falsch!");
    }
    }
    else
    {
    // Spieler ist noch nicht registriert
    SendClientMessage(playerid, FARBE_ROT, "Es existiert noch lein Account mit diesem Namen!");
    // Aufforderung zum registrieren anzeigen
    SendClientMessage(playerid, FARBE_ROT, "Bitte /reg [PASSWORT] benutzen!");
    }
    }
    return 1;
    }
    // Hilfe
    if(strcmp("/help", cmd, true) == 0)
    {
    SendClientMessage(playerid, FARBE_AQUA, "*****[HILFE]*****");
    SendClientMessage(playerid, FARBE_WEISS, "BENUTZER: /reg, /login");
    return 1;
    }
    return 0;
    }


    Da bitte.
    Er hat ganz unten return 1; gehabt, also wird OnPlayerCommandText immer wieder zurück gegeben

    Erstell doch 2 Gteams (rot und blau)


    OnPlayerDeath ..
    {
    new rot = pInfo[playerid][gTeam] = Rot
    new blau = pInfo[playerid][gTeam] = Blau
    if(killerid == rot)
    {
    // hier dann das mit score +1
    }
    if(killerid == blau)
    {
    // same
    }
    if(playerid == killerid)
    {
    return 1;
    }



    if(!strcmp(strget(cmdtext,0),"/team"))
    {
    new ziel= strval(strget(cmdtext,1));
    new teamid = strval(strget(cmdtext,2));
    if(pInfo[playerid][admin] >= 1) return SendClientMessage(playerid, COLOR_RED, "Du bist kein Admin");
    {
    if(teamid = 1)
    {
    pInfo[playerid][gTeam] = Rot;
    }
    if(teamid = 2)
    {
    pInfo[playerid][gTeam] = Blau;
    }}
    return 1;
    }


    Soll jetzt nur ein Beispiel sein

    Hmm meiner Klappt immer noch nicht, weder mit meinem gm noch mit grandalrc -.-
    Recordings ordner:Autobot.rec
    Npcmodes: Autobot.pwn & Autobot.amx

    #include "a_npc"


    new Autobotauto;


    if(IsPlayerNPC(playerid))
    {
    new botname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, botname, sizeof(botname));
    if(!strcmp(botname, "Autobot", true))
    {
    PutPlayerInVehicle(playerid, Autobotauto, 0);
    }
    }


    ConnectNPC("Autobot","Autobot");// erstes carbot steht für den namen hier im script, 2tes wie der record heißt!!!!
    Autobotauto = CreateVehicle(437, 1172.7242,-1794.3743,13.1023,184.8468,0,0,-1);// im prinzip eig egal wo man die hinspawnt, die weden später geportet denke ich (war zumindest so)




    // er connectet njicht mal aufem Server ! Muss ich die Npc.exe da starten? wenn ja die öffnet sich und schließt sich sofort -.-

    Hey,
    ich möchte bitten, dass mir jemand nochma das mit dem Textdraw Kordinaten gut erklärt.
    Ich habe jetzt dieses bild :

    Die Roten Kästchen makieren die Textdraws, von welchen ich die Kordinaten brauche.
    Könnte mir jemand aufzeichnen wie ich die Kords raus bekomme?
    Im Forum gabs mal sowas das sah so aus :
    -
    <---|--->
    -



    // Ihr müsst auf das Bild klicken iwie zeigt er mir die Kästchen nicht korrekt an -.-

    Kommen bei deinem Script nicht massig Fehler. Mindestens bei CreateVehicle hätte er ein Error haben müssen.


    nee kam nix. Jetzt bei deinem kommen Errors ^^ naja ich fixx es ma kurz



    // schönen dank erstma, die Fahrzeuge bleiben jetzt gesavt ... wenn ich die Id in der ini eingebe. Immer wenn ich /parken mache mit irgendnem Fahrzeug schreibt er in die Ini die Id 14 rein 8|
    x,y,z,angle werden aber korrekt abgesichert

    Also hab jetzt sogar noch FacingAngle eingearbeitet und es funkt immer noch nicht
    Also muss ja was am Spawnen falsch sein:

    public OnPlayerConnect(playerid)
    {
    ...


    new vehx;
    new vehy;
    new vehz;
    new veh;
    new Angle;
    new carsave[256];
    new name[MAX_PLAYER_NAME];
    format(carsave,sizeof(carsave),"Autos/%s.ini",name);
    veh = dini_Int(carsave, "Veh");
    vehx = float:dini_Float(carsave, "Xpos");
    vehy = float:dini_Float(carsave, "Ypos");
    vehz = float:dini_Float(carsave, "Zpos");
    Angle = float:dini_Float(carsave, "Angle");
    CreateVehicle(veh, vehx, vehy, vehz, Angle, 0, 1, 60);
    ...
    return 1;
    }


    weil 15 keine richtige Modelid ist kanns nicht gespawnt werden also müsste es eigendlich gehen wenn du frage 1 korrigiert hast.


    Du hast mich glaub ich nicht Verstanden^^,
    Also ich spawne das Auto mit der Id 460 (sultan) und dann steht inner ini Id 15