Beiträge von [NSK]Paddy

    Ich hab mir das script mal angesehn und habe 3 kleine Ideen zur Verbesserung. :D


    1. Warum ist der entladen befehl ein dcmd? Der Securitybeamte erhält sein Lohn beim entladen von dem ganzen geld. Also warum sollte er nur ein teil ausladen wollen? :D
    Mach einfach einen normalen Befehl so das der Geldtransporter ganz entladen wird. Das ist auch einfacher für den Fahrer als wenn der jedes mal noch die Ladungsanzahl dahinter schreiben muss. ;)
    2. Dein Entladepunkt ist die Münzprägerei, Hier der Beweis^^ also wäre es sinnvoller da den Beladepunkt hin zumachen. ;)
    3. Du solltest villeicht noch einen Timer einbauen. Denn ansonsten ist das sehr sehr leicht ausnutzbar. Ebenmal nachts Online gehen den Transporter 50mal abladen und so 75000$ zu verdienen.


    Ich weiß das ich das dank der pwn selbst ändern kann, aber ich wollte dich und andere halt mal drauf hinweisen. :) Sei mir nicht böse Hagi, musst es ja auch nicht ändern. :P:D:D


    MfG
    Paddy

    keks meinte wie du deine cmds aufgebaut hast also mit dcmd , strtok , strget oder sscanf das ist wichtig da alle anders funktionieren ;)
    Am besten wäre es wenn du ein cmd der so änlich aufgebaut ist mal hier hoch stellest oder selbst um änderst

    Zeilenangeb wie stellst du dir das vor jedes Gamemode ist unterscheidlich lang ;)


    Der /teleprt befehl gehört komplett unter
    public OnPlayerCommandText(playerid, cmdtext[])
    {

    Benutzt du SetTimer oder SetTimerEx? Mit SetTimerEx sollten 8 nicht zu viele sein glaub ich. Ansonsten irgendwie Timer einsparen in dem 1 timer die funktion von 2 übernimt oder so sonst weiß ich nicht was du tun könntest

    Und für spieler namen macht ihr das allgemein so:

    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    if(PlayerToPoint(5,playerid, x,y,z))
    {
    if(strcmp(name,"NAME",true)==0 || strcmp(name,"NAME2",true)==0)
    {
    //Tor bewegen
    }
    }


    //Edit: hier mit euren coord und so eingefügt

    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (strcmp(cmdtext, "/1", true) == 0)
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    if(PlayerToPoint(15,playerid, -489.154602, -562.762573, 20.368092))
    {
    if(strcmp(name,"NAME",true)==0 || strcmp(name,"NAME2",true)==0)
    {
    MoveObject(BurnPH_gate,-489.154602, -562.762573, 20.368092,4);
    SendClientMessage(playerid, COLOR_YELLOW,"Pfand Gelände auf!");
    return 1;
    }
    }
    }
    if (strcmp(cmdtext, "/2", true) == 0)
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    if(PlayerToPoint(15,playerid, -489.154602, -562.762573, 20.368092))
    {
    if(strcmp(name,"NAME",true)==0 || strcmp(name,"NAME2",true)==0)
    {
    MoveObject(BurnPH_gate,-489.138458, -562.767883, 27.261347,4);
    SendClientMessage(playerid, COLOR_YELLOW,"Pfand Gelände zu!");
    return 1;
    }
    }
    }
    return 0;
    }

    Das ist doch ganz easy ;) Einfach auf den server gehen in irgend ein auto steigen zu den position fahren wo die wagen stehen sollen und /save Ballas1 /save ballas2 und so weiter machen und dann die coords aus der save datei in script einfügen :)


    falls ihr trozdem wollt das das einer macht stelle ich mich gerne zur verfügung weil ein paar autos einfügen echt nicht schwer ist ;)

    Lol du bist gut, ich bin richtiger anfänger :P

    Ähm um autos in einem GM einzubauen muss man kein profi sein ;)
    einfach bei
    public OnGameModeInit();
    AddStaticVehicleEx(MODELID,X Pos,Y Pos,Z Pos,Z Angle,Farbe 1, Frabe 2, Respawnzeit);
    fertig schon ist ein neues auto im script ;)

    Also erstmal herzlichen Glückwunsch zu so einer Meister leistung an FS ;)
    aber zum vorschlag von Benjamin:

    Sauber,aber darf ich andere ID fürs Nagelband vorschlagen?
    2899 oder 2892 sind diese großen aus Vice City :D

    Die Nagelbänder 2899 sind nur ein kleines bischen größer (und ich finde sie sehen deutlich realistischer und besser aus) was heißt das die PlayerToPoint überprüfung nur minimal verändert werden muss. Du kannst es ja zur not auch mal überprüfen aber ich änder das bei mir mal ab hast ja nichts da gegen nä?

    Also wenn bei dir ein auto zerstört wird spawnt es sofort neu??
    wenn ja leigt es vielleicht daran das du es ein bischen übertrieben hast mit der respawn zeit :D
    mach einfach mal anstatt deiner 9999999999999999999999999999999999999999999... 30000 das entspricht fast 8 Stunden und ist eine standart zeit.
    Falls es dann imer noch sofort spawnt weiß ich keine lösung wenn du nixhts anders "falsch" hast :S

    Ähm wenn ich das richtig sehe hast du nur die zahlen bei str und so geändert was 0 damit zu tun hat
    Nach einem Test genau das es hat sich nichts geändert es funktoniert nicht :(


    //Edit: Ok ich habe mein Problem selbst gelöst hatte vergessen das houseid0 in einem unter ordner war :rolleyes: :rolleyes:
    trozdem danke

    Hallo liebe Community,


    ich habe da ein kleines Problem und zwar möchte ich aus zwei dini datein zeilen aus lesen und überprüfen. Es wird mir kein Error und auch kein warning angezeigt und trozdem funktionert es nicht. Kann mir wer helfen?
    Hier der Code:

    new world = GetPlayerVirtualWorld(playerid);
    new inter = GetPlayerInterior(playerid);
    new str1[256],pname[24];
    format(str1, sizeof(str1), "Houses/Users/%s", udb_encode(pname));
    if(dini_Exists(str1))
    {
    if(dini_Int(str1,"Houseid")==0)
    {
    new str2[256];
    format(str2, sizeof(str2), "houseid0");
    new inter2 = dini_Int(str2,"Interior");
    new world2 = dini_Int(str2,"Virtualworld");
    if(inter == inter2 && world == world2)
    {
    SendClientMessage(playerid, COLOR_GRÜN, "Du bist zu Hause.");
    return 1;
    }
    else
    {
    SendClientMessage(playerid, COLOR_HELLROT, "Du bist nicht zu Hause!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_HELLROT, "Du hast kein zu Hause!");
    return 1;
    }
    }