Beiträge von ENEF

    Ja, du machst
    public PayDay()
    zu
    public PayDay(playerid)


    Dann entfern die schleife, die brauchen wir jetzt nicht mehr:


    for(new i = 0; i < MAX_PLAYERS; i++)//weg
    {//Weg(Die dazugehörige klammer ganz unten auch weg, sonst 26 errors :)


    Und jetzt alle "i" zu payerid
    bsp:


    if(PlayerInfo[i][pLevel] > 0)
    //zu
    if(PlayerInfo[playerid][pLevel] > 0)


    Und wie du die Zeit speicherst?
    Schau einfach mal nach, wie pLevel gespeichert wurde und mach das gleiche mit pPayday


    Wenn du fragen hast, frag einfach^^



    Mit freundlichen Grüßen

    Huhu, geht auch etwas anderst.



    Definiere:


    forward ServerMinute();


    Bei OnGameModeInit:


    SetTimer("ServerMinute",60000,1);//1 Minute


    Dann irgendwo unten im Script:


    public ServerMinute()//Dieser Public wird jede Minute aufgerufen
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    //Deine Definierung, dein Payday soll ja auch beim Disconnect gespeichert werden, bzw die Zeit zum nächsten
    PlayerInfo[i][pPayday] += 1;//Anpassen!
    if(PlayerInfo[i][pPayday] == 60)//Wenn dein Payday auf 60 ist, wird dein Public aufgerufen
    {
    PayDay(i);
    }
    }
    }
    return 1;
    }
    pPayday ist die Zeit des Spielers, wielange er schon Spielt. Dies wird in deiner Datenbank oder in deiner ini gespeichert(falls du das natürlich nicht willst, erstelle eine Globale Variable:


    new pPayday[MAX_PLAYERS];
    und ändere es dann in:
    if(pPayday[playerid] == 60)
    //und
    pPayday[playerid] += 1;


    Du musst jetzt nur noch bei deinem Payday Public ein (playerid) hinzufügen, somit brauchst du auch keine Schleife mehr.


    Falls was falsch ist, einfach verbessern oder falls ich was falsch erklärt habe

    Hi, ich habe jetzt 3 Box'en erstellt und die Größe bei meinen vorhandenen Boxen eingefügt, jedoch wird jetzt garnichts mehr "Gehovert" und ich kann jetzt auch nichts mehr anklicken.


    Das sind die erstellten Boxen:


    Spoiler anzeigen
    Textdraw0 = TextDrawCreate(382.500000, 207.455551, "Regbox");
    TextDrawLetterSize(Textdraw0, 0.000000, 1.964815);
    TextDrawTextSize(Textdraw0, 259.000000, 0.000000);
    TextDrawAlignment(Textdraw0, 1);
    TextDrawColor(Textdraw0, 0);
    TextDrawUseBox(Textdraw0, true);
    TextDrawBoxColor(Textdraw0, 102);
    TextDrawSetShadow(Textdraw0, 0);
    TextDrawSetOutline(Textdraw0, 0);
    TextDrawFont(Textdraw0, 0);

    Spoiler anzeigen
    Textdraw1 = TextDrawCreate(382.500000, 239.188888, "Infobox");
    TextDrawLetterSize(Textdraw1, 0.000000, 2.310491);
    TextDrawTextSize(Textdraw1, 258.000000, 0.000000);
    TextDrawAlignment(Textdraw1, 1);
    TextDrawColor(Textdraw1, 0);
    TextDrawUseBox(Textdraw1, true);
    TextDrawBoxColor(Textdraw1, 102);
    TextDrawSetShadow(Textdraw1, 0);
    TextDrawSetOutline(Textdraw1, 0);
    TextDrawFont(Textdraw1, 0);

    Spoiler anzeigen
    Textdraw2 = TextDrawCreate(383.500000, 300.788879, "leaveboxi");
    TextDrawLetterSize(Textdraw2, 0.000000, 2.379629);
    TextDrawTextSize(Textdraw2, 258.000000, 0.000000);
    TextDrawAlignment(Textdraw2, 1);
    TextDrawColor(Textdraw2, 0);
    TextDrawUseBox(Textdraw2, true);
    TextDrawBoxColor(Textdraw2, 102);
    TextDrawSetShadow(Textdraw2, 0);
    TextDrawSetOutline(Textdraw2, 0);
    TextDrawFont(Textdraw2, 0);


    Hatte davor auch schon welche hinter den Selectable Textdraws und habs mit der Größe versucht, da ging es genau so wenig.


    Was mache ich falsch ?(

    Genau ich erstelle eine neue Datei inGame, mit dem Namen "Test" dann erstelle ich mein Textdraw und mach in Selectable.
    Dann erstelle ich eine Box über dem Textdraw der Selectabel sein soll.
    Ich Speichere alles und öffne mit Pawn dann die Datei "Test"


    Und sagen wir ich habe die Box "Select" genannt, muss ich dann die Textdrawsize von Select bei dem Textdraw den ich auf Selectable gestellt habe einfügen, oder?



    Sorry für die Umständlichkeit.



    Mit freundlichen Grüßen

    "REGILOGTEXT" ist Einloggen bzw Regestrieren ^^



    Ja aber gibt es da nicht irgendwie was, wo es genau macht?
    Und wieso macht das der Editor nicht?


    Oder ein kleinen Trick damit man die genaue Size hat.



    Mit freundlichen Grüßen

    Hallo leute,


    Ich habe ein Problem mit anklickbaren Textdraws, sie funktionieren eigentlich perfekt jedoch gibt es da etwas, wo mich stört.


    Ich Fahre beispielsweise über "Einloggen"(steht ganz oben) funktioniert der Hover effekt oder wie er heißt perfekt.
    Fahre ich jedoch über "Informationen" oder "Verlassen" die stehen unter "Einloggen" Färbt sich alles.


    Ich weiß das es mit der Textdrawsize zutun hat, hab die SuFu benutzt jedoch check ich da nicht durch.
    Die Funktionen werden trotzdem richtig ausgeführt nur die Färben sich halt obwohl die sich ja nur Färben sollen wenn ich über sie drüber gehe.


    Ich erstelle die mit dem ITD textdraw editor, wieso funktioniert das dann nicht richtig?


    Spoiler anzeigen
    Login6[playerid] = CreatePlayerTextDraw(playerid, 264.000000, 208.444427, "REGILOGTEXT");
    PlayerTextDrawLetterSize(playerid, Login6[playerid], 0.255499, 1.643555);
    PlayerTextDrawTextSize(playerid, Login6[playerid], 240.500000, 15.000000);
    PlayerTextDrawAlignment(playerid, Login6[playerid], 1);
    PlayerTextDrawColor(playerid, Login6[playerid], -1);
    PlayerTextDrawSetShadow(playerid, Login6[playerid], 0);
    PlayerTextDrawSetOutline(playerid, Login6[playerid], 1);
    PlayerTextDrawBackgroundColor(playerid, Login6[playerid], 51);
    PlayerTextDrawFont(playerid, Login6[playerid], 2);
    PlayerTextDrawSetProportional(playerid, Login6[playerid], 1);
    PlayerTextDrawSetSelectable(playerid, Login6[playerid], true);

    Spoiler anzeigen
    Login7[playerid] = CreatePlayerTextDraw(playerid, 263.500000, 242.666656, "Informationen");
    PlayerTextDrawLetterSize(playerid, Login7[playerid], 0.255499, 1.643555);
    PlayerTextDrawTextSize(playerid, Login7[playerid], 258.000000, 15.000000);
    PlayerTextDrawAlignment(playerid, Login7[playerid], 1);
    PlayerTextDrawColor(playerid, Login7[playerid], -1);
    PlayerTextDrawSetShadow(playerid, Login7[playerid], 0);
    PlayerTextDrawSetOutline(playerid, Login7[playerid], 1);
    PlayerTextDrawBackgroundColor(playerid, Login7[playerid], 51);
    PlayerTextDrawFont(playerid, Login7[playerid], 2);
    PlayerTextDrawSetProportional(playerid, Login7[playerid], 1);
    PlayerTextDrawSetSelectable(playerid, Login7[playerid], true);

    Spoiler anzeigen
    Login8[playerid] = CreatePlayerTextDraw(playerid, 288.000000, 306.755554, "Verlassen");
    PlayerTextDrawLetterSize(playerid, Login8[playerid], 0.255499, 1.643555);
    PlayerTextDrawTextSize(playerid, Login8[playerid], 258.000000, 15.000000);
    PlayerTextDrawAlignment(playerid, Login8[playerid], 1);
    PlayerTextDrawColor(playerid, Login8[playerid], -1);
    PlayerTextDrawSetShadow(playerid, Login8[playerid], 0);
    PlayerTextDrawSetOutline(playerid, Login8[playerid], 1);
    PlayerTextDrawBackgroundColor(playerid, Login8[playerid], 51);
    PlayerTextDrawFont(playerid, Login8[playerid], 2);
    PlayerTextDrawSetProportional(playerid, Login8[playerid], 1);
    PlayerTextDrawSetSelectable(playerid, Login8[playerid], true);


    Jetzt werden sie grad garnicht gefärbt und ich kann sie auch garnicht anklicken weil ich experimentiert habe. Gibt es eine Methode beim ITD das Problem zu vermeiden?


    Mit freundlichen Grüßen

    MoD:
    Aka MasterOfDisaster


    In Liberty ist das DM zu hoch.
    Außerdem bei den momentanen Laggs ist es nicht grad geil zu zocken, außerdem ist meiner Meinung nach nicht mehr viel an updates los, keine Ahnung was mit Illex da los ist.
    Sonst ist Liberty natürlich zu empfehlen, habe dort selbst von 2009 - 2015 gespielt.
    Kannst dir ja dein eigenes Bild machen, wäre das viele dm und die laggs nicht würde ich selbst noch dort spielen.


    Mit freundlichen Grüßen

    Es scheint nun zu funktionieren, zum Glück ^^


    Wäre fast verzweifelt, danke an:
    @0x0040FB80:
    Jeffry:



    Falls es Probleme gibt, editiere ich den Beitrag, bis dahin Erledigt.



    Mit freundlichen Grüßen

    Aber was würde das dann nützen, dann speichert er ja alles auf 0 :o?


    //Edit:


    Ich habe keine Ahnung was das ist. Ich erstelle mir einen Spieler der normal Spawnt und mach ihn bsp Admin lv5 und stelle ihn in SF BHF.
    Dann mach ich nen 2ten Account und den Regestriere ich, der nimmt dann die Werte vom ersten Spieler und steht dann genau so dort.


    Ich bitte um Hilfe, das war davor nie, aber egal welches Script Backup ich nehme, es passiert trotzdem.


    Welchen Code braucht ihr?


    Jeffry:
    Kannst du mir helfen?



    Mit freundlichen Grüßen

    Nein. Das war davor auch nie ein Problem da funktionierte alles immer perfekt.


    Ich habe alle Accounts(3) in der DB gelöscht, Reg. mich komplett neu, erster Spawn Funktioniert genau perfekt(nach reg.)
    Logge ich mich aus, und wieder ein dann Spawn ich irgendwo, wo ich mit einem alten Account schon mal war oder bekomme dann alles von einem anderen account kopiert,



    Mit freundlichen Grüßen

    Bei OnPlayerDisconnect;
    reged[playerid] = 0;
    logged[playerid] = 0;


    Extra so hässliche Namen gegeben, nicht das irgendwas überschrieben wird.


    Mit freundlichen Grüßen

    Methode 1 ist ja wesentlich einfacher, was würdest du mir empfehlen?


    //Edit:


    Habe Methode 1 genommen, danke für deine Hilfe.


    //Edit:
    Jetzt funktioniert so gut wie gar nichts mehr, wenn ich mich neu regestriere, auslogge und wieder einlogge werden irgendwie sachen wie bsp skins und admin level von anderen accounts genommen und kopiert?


    Jeffry:



    MfG

    Hallo leute.


    Ich habe ein Problem mit meinem Login/Register Textdraw.
    Der Login und Register Button ist beides der selbe, blos lass ich den String entweder zu Einloggen oder Regestrieren ändern, was auch perfekt klappt.


    Nun, wenn ich aber schon Regestriert bin steht ja einloggen da, klick ich aber drauf kommt der Regestrierungsdialog was ja eigentlich nicht sein dürfte..


    Beim Regestrieren passt alles, da gehts wunderbar..


    Hier mal mein Code wo ich den textdraw string ändere, was auch gut funkt.


    Spoiler anzeigen
    forward CheckAccount(playerid);
    public CheckAccount(playerid)
    {
    new string[128];
    if(cache_num_rows() == 0)//Register
    {
    for(new i =0;i<100;i++)
    {
    SendClientMessage(playerid,-1,"");
    }
    SelectTextDraw(playerid, 0xA3B4C5FF);
    PlayerTextDrawShow(playerid, Login1[playerid]);
    PlayerTextDrawShow(playerid, Login2[playerid]);
    PlayerTextDrawShow(playerid, Login3[playerid]);
    PlayerTextDrawShow(playerid, Login4[playerid]);
    PlayerTextDrawShow(playerid, Login5[playerid]);
    PlayerTextDrawShow(playerid, Login6[playerid]);
    PlayerTextDrawShow(playerid, Login7[playerid]);
    PlayerTextDrawShow(playerid, Login8[playerid]);
    PlayerTextDrawShow(playerid, Login9[playerid]);
    format(string, sizeof(string), "Regestrieren");
    PlayerTextDrawSetString(playerid,Login6[playerid],string);
    }
    else//Login
    {
    for(new i =0;i<100;i++)
    {
    SendClientMessage(playerid,-1,"");
    }
    SelectTextDraw(playerid, 0xA3B4C5FF);
    PlayerTextDrawShow(playerid, Login1[playerid]);
    PlayerTextDrawShow(playerid, Login2[playerid]);
    PlayerTextDrawShow(playerid, Login3[playerid]);
    PlayerTextDrawShow(playerid, Login4[playerid]);
    PlayerTextDrawShow(playerid, Login5[playerid]);
    PlayerTextDrawShow(playerid, Login6[playerid]);
    PlayerTextDrawShow(playerid, Login7[playerid]);
    PlayerTextDrawShow(playerid, Login8[playerid]);
    PlayerTextDrawShow(playerid, Login9[playerid]);
    format(string, sizeof(string), "Einloggen");
    PlayerTextDrawSetString(playerid,Login6[playerid],string);
    }
    return 1;
    }


    Und hier Login6


    Spoiler anzeigen
    if(playertextid == Login6[playerid])//Register/Login
    {
    if(cache_num_rows() == 0)
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"________Herzlich Wilkommen auf San Francisco Reallife________");
    SendClientMessage(playerid, 0xFFFFFFFF,"Datenbank: Akte konnte nicht gefunden werden. Bitte Registrieren Sie sich!");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registrieren","Bitte gib dein Persöhnliches Passwort ein:","Register","Abbrechen");
    PlayerTextDrawHide(playerid, Login1[playerid]);
    PlayerTextDrawHide(playerid, Login2[playerid]);
    PlayerTextDrawHide(playerid, Login3[playerid]);
    PlayerTextDrawHide(playerid, Login4[playerid]);
    PlayerTextDrawHide(playerid, Login5[playerid]);
    PlayerTextDrawHide(playerid, Login6[playerid]);
    PlayerTextDrawHide(playerid, Login7[playerid]);
    PlayerTextDrawHide(playerid, Login8[playerid]);
    PlayerTextDrawHide(playerid, Login9[playerid]);
    CancelSelectTextDraw(playerid);
    }
    else
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"________Herzlich Wilkommen auf San Francisco Reallife________");
    SendClientMessage(playerid, 0xFFFFFFFF,"Datenbank: Akte wurde gefunden. Bitte Loggen Sie sich ein!");
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Einloggen","Bitte gib dein Passwort ein:","Login","Abbrechen");
    PlayerTextDrawHide(playerid, Login1[playerid]);
    PlayerTextDrawHide(playerid, Login2[playerid]);
    PlayerTextDrawHide(playerid, Login3[playerid]);
    PlayerTextDrawHide(playerid, Login4[playerid]);
    PlayerTextDrawHide(playerid, Login5[playerid]);
    PlayerTextDrawHide(playerid, Login6[playerid]);
    PlayerTextDrawHide(playerid, Login7[playerid]);
    PlayerTextDrawHide(playerid, Login8[playerid]);
    PlayerTextDrawHide(playerid, Login9[playerid]);
    CancelSelectTextDraw(playerid);
    }
    return 1;
    }


    Davor war alles so und da gings ja auch ?


    forward CheckAccount(playerid);
    public CheckAccount(playerid)
    {
    if(cache_num_rows() == 0)
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"________Herzlich Wilkommen auf San Francisco Reallife________");
    SendClientMessage(playerid, 0xFFFFFFFF,"Datenbank: Akte konnte nicht gefunden werden. Bitte Registrieren Sie sich!");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registrieren","Bitte gib dein Persöhnliches Passwort ein:","Register","Abbrechen");
    }
    else
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"________Herzlich Wilkommen auf San Francisco Reallife________");
    SendClientMessage(playerid, 0xFFFFFFFF,"Datenbank: Akte wurde gefunden. Bitte Loggen Sie sich ein!");
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Einloggen","Bitte gib dein Passwort ein:","Login","Abbrechen");
    }
    return 1;
    }


    Hoffe auf hilfe, danke euch.


    Mit freundlichen Grüßen

    Hallo & Sorry wenns das falsche Forum ist aber ich muss das jetzt schnell behoben haben.


    Ich war gerade am Scripten, und irgendwann zwischen drin kommt ein Fehler:


    Access Violation....(...) und egal was ich mache der Fehler kommt, ich kann das Gamemode nicht kopieren und nicht Compilen, also wenn ich es nicht so behebe ist alles was ich jetzt gemacht habe denke ich mal weg!!


    Hier mal ein Screen:


    Ich hoffe einer hatte mal das selbe Problem und kann mir helfen..



    An die Admins/Moderatoren: Wenn dass das falsche Thread ist, bitte ich euch, es in das richtige zu verschieben :)



    Mit freundlichen Grüßen

    Mach's doch mal so:
    else if($num_rows2 > 2)
    {


    Also beim letzten wo du >3 hattest.
    So ich ich das sehe, hast du immer abgefragt ob er 1 auto hat, dann...
    Ob er 2 Autos hat dann..
    Und dann ob er mehr als 3 hat, und hast sozusagen das 3 ausgelassen. Deswegen ob er mehr als 2 hat.
    Bin kein pro, aber kannst e ja mal testen.


    Mit freundlichen Grüßen

    Huhu, klar geht alles.


    Du machst im Script oben:


    Spoiler anzeigen
    new PlayerVehicle[212][] = {
    "Landstalker", "Bravura", "Buffalo", "Linerunner", "Perrenial", "Sentinel", "Dumper", "Firetruck", "Trashmaster", "Stretch", "Manana",
    "Infernus", "Voodoo", "Pony", "Mule", "Cheetah", "Ambulance", "Leviathan", "Moonbeam", "Esperanto", "Taxi", "Washington", "Bobcat",
    "Whoopee", "BF Injection", "Hunter", "Premier", "Enforcer", "Securicar", "Banshee", "Predator", "Bus", "Rhino", "Barracks", "Hotknife",
    "Trailer 1", "Previon", "Coach", "Cabbie", "Stallion", "Rumpo", "RC Bandit", "Romero", "Packer", "Monster", "Admiral", "Squalo",
    "Seasparrow", "Pizzaboy", "Tram", "Trailer 2", "Turismo", "Speeder", "Reefer", "Tropic", "Flatbed", "Yankee", "Caddy", "Solair",
    "Berkley's RC Van", "Skimmer", "PCJ-600", "Faggio", "Freeway", "RC Baron", "RC Raider", "Glendale", "Oceanic", "Sanchez", "Sparrow",
    "Patriot", "Quad", "Coastguard", "Dinghy", "Hermes", "Sabre", "Rustler", "ZR-350", "Walton", "Regina", "Comet", "BMX", "Burrito",
    "Camper", "Marquis", "Baggage", "Dozer", "Maverick", "News Chopper", "Rancher", "FBI Rancher", "Virgo", "Greenwood", "Jetmax", "Hotring",
    "Sandking", "Blista Compact", "Police Maverick", "Boxvillde", "Benson", "Mesa", "RC Goblin", "Hotring Racer A", "Hotring Racer B",
    "Bloodring Banger", "Rancher", "Super GT", "Elegant", "Journey", "Bike", "Mountain Bike", "Beagle", "Cropduster","Stunt", "Tanker",
    "Roadtrain", "Nebula", "Majestic", "Buccaneer", "Shamal", "Hydra", "FCR-900", "NRG-500", "HPV1000", "Cement Truck", "Tow Truck", "Fortune",
    "Cadrona", "FBI Truck", "Willard", "Forklift", "Tractor", "Combine", "Feltzer", "Remington", "Slamvan", "Blade", "Freight", "Streak",
    "Vortex", "Vincent", "Bullet", "Clover", "Sadler", "Firetruck LA", "Hustler", "Intruder", "Primo", "Cargobob", "Tampa", "Sunrise", "Merit",
    "Utility", "Nevada", "Yosemite", "Windsor", "Monster A", "Monster B", "Uranus", "Jester", "Sultan", "Stratum", "Elegy", "Raindance",
    "RC Tiger", "Flash", "Tahoma", "Savanna", "Bandito", "Freight Flat", "Streak Carriage", "Kart", "Mower", "Dune", "Sweeper", "Broadway",
    "Tornado", "AT-400", "DFT-30", "Huntley", "Stafford", "BF-400", "News Van", "Tug", "Trailer 3", "Emperor", "Wayfarer", "Euros", "Hotdog",
    "Club", "Freight Carriage", "Trailer 4", "Andromada", "Dodo", "RC Cam", "Launch", "Police Car (LSPD)", "Police Car (SFPD)",
    "Police Car (LVPD)", "Police Ranger", "Picador", "S.W.A.T", "Alpha", "Phoenix", "Glendale", "Sadler", "Luggage Trailer A",
    "Luggage Trailer B", "Stairs", "Boxville", "Tiller", "Utility Trailer"
    };


    Bei deinem Command:


    if(strcmp(cmdtext,"/s1",true)==0)
    {
    new string[125];
    new name[MAX_PLAYER_NAME];
    new vehicleid = GetPlayerVehicleID(playerid), modelid = GetVehicleModel(vehicleid);
    GetPlayerName(playerid,name,sizeof(name));
    format(string, sizeof(string), "%s sitzt in dem Auto %s", name,PlayerVehicle[modelid - 400]);
    SendFraktionMessage(FRAKTION, FARBE, string);
    return 1;
    }


    Ganz weit runter ins Script:

    Spoiler anzeigen
    forward SendFraktionMessage(team, color, string[]);
    public SendFraktionMessage(team, color, string[])
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(SpielerInfo[i][pTeam] == team)//Hier deine Fraktionsabfrage bitte anpassen!!!
    {
    SendClientMessage(i, color, string);
    }
    }
    }
    }


    Bei Fragen, einfach hier rein schreiben.


    Mit freundlichen Grüßen


    //Edit:
    Sorry, fehler ausgebessert :)

    Huhu,


    also mir gefällt das Interior sehr!
    Was ich leider auch erwähnen muss, ist das an manchen Stellen es etwas flackert.
    Und mir persönlich sind es zu wenig Zellen ;)


    Aber sonst echt cool, 7/10 Punkte



    Mit freundlichen Grüßen