Beiträge von Humen

In 10 Minuten startet der nächtliche Backupvorgang! Es kann währenddessen (ca. 10 Minuten) zu Einschränkungen bei der Nutzung des Forums kommen
Weitere Infos findet ihr im Thema Backup des Forums

    Guten Abend Breadfish Community!


    Ich habe einen leider hässlichen Bug in meinem Script:
    Wenn OnPlayerLogin ausgeführt wird, werden die Userdaten nicht aus der .ini geladen :(
    Wäre super wenn ihr mir helfen könntet :(
    Ich stehe auf der Leitung.
    Vielleicht hatte ja schon mal jemand dieses Problem.


    mfg
    Humen


    //EDIT
    Und ja OnPlayerLogin wird ausgeführt und hat immer funktioniert so :(
    http://humen.square7.ch/OnPlayerLogin.pwn
    Mein Code. Hab ich leider vergessen. Sorry.

    Das:
    public UmgebungsChat(playerid, color, const string[]) //irgendwo unten hinzufügen
    {
    for(new i = 0;i<MAX_PLAYERS;i++)
    {
    if(GetPlayerPos(playerid,x_range,y_range,z_range))
    {
    if(IsPlayerConnected(i))
    {
    if(IsPlayerInRangeOfPoint(i,5,x_range,y_range,z_range))
    {
    SendClientMessage(i,color,string);
    }
    }
    }
    }
    Wird so nicht funktionieren.


    So:
    public UmgebungsChat(playerid, color, const string[]) //irgendwo unten hinzufügen
    {
    new Float:x_range, Float:y_range, Float:z_range;
    GetPlayerPos(playerid,x_range,y_range,z_range);
    for(new i = 0;i<MAX_PLAYERS;i++)
    {
    if(IsPlayerConnected(i))
    {
    if(IsPlayerInRangeOfPoint(i,5,x_range,y_range,z_range))
    {
    SendClientMessage(i,color,string);
    }
    }
    }
    Das:
    Float:x_range, Float:y_range, Float:z_range
    Weg lassen.


    Müsste das funktionieren.


    mfg
    Humen

    OnGameModeInit:
    ConnectNPC("carbot","carbot");// erstes carbot steht für den namen hier im script, 2tes wie der record heißt
    CARBOTCAR = CreateVehicle(431, 2000.0, 2000.0, 2000.0, 7.0, 0, 0, -1);//dein Botauto


    OnPlayerConnect:

    if(IsPlayerNPC(playerid))
    {
    gPlayerAccount[playerid] = 1;
    gPlayerLogged[playerid] = 1;
    return 1;
    }


    OnPlayerSpawn:
    if(IsPlayerNPC(playerid))
    {
    PlayerInfo[playerid][pCarLic] = 1;
    new botname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, botname, sizeof(botname));
    if(!strcmp(botname, "carbot", true))
    {
    PutPlayerInVehicle(playerid, CARBOTCAR, 0);
    return 1;
    }
    }


    So, habe alles noch einmal zusammengefasst!
    Soweit ich gesehen habe habt ihr Profis dem Bot keinen Führerschein gegeben :D
    Führerschein bekommt er nun so:
    PlayerInfo[playerid][pCarLic] = 1;
    Bei OnPlayerSpawn.


    Ich hoffe ich konnte helfen :)



    mfg
    Humen


    if (strcmp("/kart", cmdtext, true, 10) == 0)
    {
    new string[128];
    new Player[MAX_PLAYER_NAME];
    GetPlayerName(playerid, Player, sizeof(Player));
    format(string,sizeof(string)," %s hat /kart betreten",Player);
    SendClientMessageToAll(COLOR_ROT, string);
    SetVehiclePos(pVehicle,2286.1597, 605.1251, 10.8203);
    SetPlayerPos(playerid,2286.1597, 605.1251, 10.8203);
    PutPlayerInVehicle(playerid,pVehicle,0);
    GameTextForPlayer(playerid,"~r~Kart Racing", 5000, 3);
    return 1;
    }

    So vielleicht?
    So kommt die Nachricht "NAME hat /kart betreten"


    mfg
    Humen

    Du musst noch Koords bei PlayerToPoint hinzufügen.


    if(!PlayerToPoint(Radius rund um die Koordinate, playerid, Koordinate X, Koordinate Y, Koordinate X))


    mfg
    Humen

    Also ich hab das so:


    new Text:UhrzeitStundeMinute;
    Ein normales new!


    UhrzeitStundeMinute = TextDrawCreate(605.0,25.0,"00:00");
    TextDrawUseBox(UhrzeitStundeMinute, 0);
    TextDrawFont(UhrzeitStundeMinute, 3);
    TextDrawSetShadow(UhrzeitStundeMinute,1);
    TextDrawSetOutline(UhrzeitStundeMinute,1);
    TextDrawBackgroundColor(UhrzeitStundeMinute,0x000000FF);
    TextDrawColor(UhrzeitStundeMinute,0xFFFFFFFF);
    TextDrawAlignment(UhrzeitStundeMinute,3);
    TextDrawLetterSize(UhrzeitStundeMinute,0.5,1.5);
    Bei OnGameModeInit!


    TextDrawShowForPlayer(playerid, Text:UhrzeitStundeMinute);
    Bei OnPlayerConnect!


    public UpdateTime()
    {
    new Hour, Min, Sec;
    new TimeString[256];
    gettime(Hour, Min, Sec);
    if(Min <= 9)
    {
    format(TimeString,25,"%d:0%d",Hour, Min);
    }
    else
    {
    format(TimeString,25,"%d:%d",Hour, Min);
    }
    TextDrawSetString(UhrzeitStundeMinute,TimeString);
    TextDrawShowForAll(UhrzeitStundeMinute);
    return 1;
    }
    Ein Public!
    Das Public definierst du noch mit einem forward und setzt einen Timer in OnGameModeInit, dann funktioniert das ganz einfach.
    Wie folgt:
    Uhr wird created bei Server Start und Updatet sich von Minute zu Minute mit dem Timer(Wichtig! Timer mit einer Minute setzen!)


    mfg
    Humen

    Soweit ich weiß gehört das:
    ShowPlayerDialog(playerid,ADDFRIEND,INPUT,"Freund hinzufügen","Gib den Namen des Spielers ein, den\nDu als Freund hinzufügen möchtest","Hinzufügen","Abbrechen");
    So:
    ShowPlayerDialog(playerid,ADDFRIEND,DIALOG_STYLE_INPUT,"Freund hinzufügen","Gib den Namen des Spielers ein, den\nDu als Freund hinzufügen möchtest","Hinzufügen","Abbrechen");


    mfg
    Humen


    //EDIT
    Aber das ist glaube ich trotzdem egal ^^

    Da gibt es ein Funktion Namens: strmid(PlayerInfo[playerid][pEmail], Variable wo es herkommt, 0, strlen(val)-1, 255); und Restliches keine Ahnung.
    Wäre fein wenn mir jemand erklären könnte was der Rest von strmid(PlayerInfo[playerid][pEmail], val, 0, strlen(val)-1, 255); zu bedeuten hat.
    Also das: , 0, strlen(val)-1, 255);


    mfg
    Humen

    Gibts da nicht eine bereits fertige Funktion zum Gebietsnamen abrufen?
    Weiß auch nicht aber ich dachte schon?!


    Das Wiki ist down oO NEIN :(


    mfg
    Humen