Beiträge von Stylerboy

    Such mal nach dem SetPlayerCheckpoint für den Checkpoint in der Stadthalle.


    Dort nimmst du die Koordinaten ( X, Y, Z, ) und fügst diese oben ein, wie ich es oben geschrieben habe, dann sollte auch alles gehen.


    Probier einfach ein bisschen rum, aber mach davor ein Backup von deinem Script. :rolleyes:

    Hey,



    zum 1. Problem:


    Dort wo du SendClientMessage(playerid, COLOR_BLABLA, "Gib /job ein um zu...") verwendet hast, kannst du ja abfragen, ob die Person in den Koordinaten von dem Checkpoint IN der Stadthalle steht.


    Also, z.B.


    if(PlayerToPoint(3.0, playerid, KOORDINATEN VOM CHECKPOINT))
    {
    GameTextForPlayer(playerid, "~w~Gib /job ein um zu...", 5000, 3);
    }





    zum 2. Problem:


    Zum Beispiel:


    SetPlayerCheckpoint(i,2308.3540,-2354.0039,12.6842,8.0); <-- die 8.0 je nach Wunsch größer oder kleiner Stellen, um den Radius des Checkpoints zu vergrößern oder zu verkleinern


    Das dann einfach dort einfügen. Das bekommste hin oder ? ^^




    Viele Grüße,


    Stylerboy

    Hast du denn ein GodFather Mod ?


    Ich gehe mal davon aus, dass du ein GF Mod hast.


    Erklärung:


    Beim Auswählen eines Jobs wird ein Checkpoint erstellt, wie du sagtest, ABER du musst im Script auch abfragen, ob die Person im Checkpoint steht, damit dieser Checkpoint auch abgeschaltet werden kann.


    Tipp:


    Das oben im Script einfügen:
    forward CheckpointOff();


    Das im OnGameModeInit:
    SetTimer("CheckpointOff", 1000, 1);


    Das ganz unten im Script:
    public CheckpointOff()
    {
    for ( new i = 0; i < MAX_PLAYERS; i ++)
    {
    if(IsPlayerConnected(i))
    {
    if(PlayerToPoint(3.0, i, HIER DIE KOORDINATEN VOM CHECKPOINT ))
    {
    DisablePlayerCheckpoint(i);
    }
    else if(PlayerToPoint(3.0, i, HIER DIE NÄCHSTEN KOORDINATEN VOM ANDEREN CHECKPOINT ))
    {
    DisablePlayerCheckpoint(i);
    }
    }
    }
    return 1;
    }

    Hey Leute,


    ich möchte in mein GF Script ein "User werben User" - System hinzufügen, nur weiß ich nicht wie ich dieses schreibe.


    Mein Wunsch wäre es, wenn nach dem /register eine Meldung kommt: "Von welchem Spieler wurdest geworben ? (Tippe den Name ein, sonst "niemand")".


    Wenn man den Namen dann eintippt, sollte der getippte Name in der INI gespeichert werden. Wenn ein User also von einem anderen User geworben wurde, sollte der User, der den Neuling reingebracht hat, 5 Respektpunkte bekommen, wenn der Neuling Level 3 erreicht.


    Mein Problem liegt darin, dass ich scripten beim Versuchen lerne und deshalb nicht die notwendigen Funktionen für das Auslesen bzw. Reinschreiben in Dateien o.ä. kenne.


    Ich hoffe jemand versteht was ich meine und kann mir nützliche Tipps oder Scriptteile posten.


    Viele Grüße,


    Stylerboy

    Schon gemacht, da stand "DestroyVehicle(Carlist[playerid][Carid]);" ... So nach dem Motto hab ich es auch mit "DestroyVehicle(PlayerInfo[playerid][pCarid]);" probiert, aber dadurch wird das Fahrzeug nicht zerstört und bei jedem neuen Login, wird immer 1 Fahrzeug mehr erstellt.

    Ich habe das so gemacht :


    enum pInfo
    {
    pCarid,
    ...


    Das habe ich dann in die User.ini reinschreiben lassen. Dabei wurde die Modelid vom Fahrzeug, z.B. für Sultan eine 560, eingetragen. Nun weiß ich aber nicht, wie ich das Fahrzeug, dessen Modelid in der User.ini steht, zerstören kann, wenn der Spieler den Server verlässt.

    Sehr geehrte Community,


    ich versuche im Moment ein eigenes kleines Autohaus zu erstellen und bisher lief alles gut, doch nun kommt das 1. Problem, bei dem ich nicht weiter komme.


    Meine Frage:


    Wie schreibe ich am Besten ein Fahrzeug in die User.ini , das beim "OnPlayerConnect" erscheint und bei "OnPlayerDisconnect" zerstört wird. Dazu sollte es nur dem Spieler gehören.


    Ich kann mir vorstellen, dass es eigentlich gar nicht so schwer ist, jedoch krieg ich den Dreh nicht raus ^^



    Viele Grüße,


    Stylerboy

    Wenn du überprüfen kannst, ob ein Admin in ein Fahrzeug steigt, dann füg einfach " RemovePlayerFromVehicle(playerid); " ein.


    Verstehe nämlich nicht so ganz, wie du es gescriptet hast :rolleyes:


    Viele Grüße,


    Stylerboy

    Hey,


    ich gehe mal davon aus, dass du deinen Server mit der "samp-server.exe" startest, die sich auf deinem Rechner befindet ? Wenn ja, liegt es an deinem Router, denn der startet sich immer neu, z.B. wenn du ihn ausschaltest oder er selbst auch mal eine Zwangstrennung um 3:00Uhr morgens macht.


    Da ich mich mit dem Root und sowas mögliche überhaupt nicht auskenne, weiß ich das Problem nur damit zu lösen, sich einen Server hier bei Breadfish für 5 € pro Monat zu kaufen. ;)


    Viele Grüße,


    Stylerboy

    Hey Hws,


    also ein "AddStaticVehicle( ... ); " fügst du unter "public OnGameModeInit" ein. Dann erscheint das Fahrzeug, wenn du den Server anschaltest. Da du aber willst, dass ein BESTIMMTES Fahrzeug eine BESTIMMTE Voraussetzung, hier wäre es, dass nur BESTIMMTE Personen es fahren dürfen, beziehst du dich am Besten auf jedes Fahrzeug einzeln. Also:


    Ganz oben im Script, wo alle anderen "new ...." stehen, fügst du das ein:
    new LSPDCar1;


    Unter "public OnGameModeInit" fügst du nun das ein:
    LSPDCar1 = AddStaticVehicleEx( KOORDINATEN );


    Nun fügst oben im Script, wo alle "forward ..." stehen das ein:
    forward IsACop(playerid);


    Jetzt gehst du ganz nach unten im Script und fügst dort das ein:
    public IsACop(playerid)
    {
    if(IsPlayerConnected(playerid))
    {
    new member = PlayerInfo[playerid][pMember];
    new leader = PlayerInfo[playerid][pLeader];
    if(member == 1) // Die 1 kann bei dir auch eine andere Zahl sein... Es kommt drauf an auf welcher Zahl bei dir die Polizei liegt (mit /makeleader kannst du es testen)
    {
    return 1;
    }
    else if(leader == 1)
    {
    return 1;
    }
    }
    return 0;
    }


    Dann suchst du nach " if(newstate == PLAYER_STATE_DRIVER) " und fügst dort das ein:
    if(GetPlayerVehicleID(playerid)==LSPDCar1)
    {
    if(IsACop(playerid))
    {
    }
    else
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid, COLOR_GREY, "Du bist kein Polizist!");
    }
    }


    Nun sollte es so klappen, wenn ein Polizist in das LSPDCar steigt, dass er damit fahren kann. Sollten jetzt andere Leute einsteigen, steigen sie automatisch wieder aus.


    Zu deiner 2. Frage:


    Im Moment kann ich dir hierbei noch nicht helfen, hab mein Script nicht und weiß im mom nicht, wie der /m Befehl aussieht ^^


    Jetzt zu deiner 3. Frage:


    Wenn du deinen Server auf deinem normalen Rechner täglich anmachst, kannst du keine feste IP haben, weil dein Router immer einen Neustart macht, sei es ein Zwangsneustart, wobei dieser dann eine andere IP bekommt. Falls du das ändern möchtest, hast du nur die Chance z.B. hier bei Breadfish einen Server zu kaufen, für den du monatlich 5 € zahlen musst.

    Hey Leute,


    ich hatte viele Probleme mit meinem Autohaus (Ping's FS) und nun, wo alles einwandfrei läuft, kommt wie immer ein neues Problem. Wenn man ein Auto kauft, dieses dann mit /carsell verkauft, bekommt man ja das Geld wieder. Da mein Antihack von JunkBuster das Geld vom /carsell als gecheatetes Geld wahrnimmt, entzieht er dem Spieler das Geld und stellt es auf die vorherige Summe, sodass man eben fürs /carsell kein Geld bekommt. Da ich JunkBuster nicht wirklich verändern will, weil alles gut läuft, wollte ich fragen, wie ich vom Autohaus FS auf die JunkBuster INC zugreifen kann ? Damit meine ich, dass ich /carsell vom Autohaus FS zum JunkBuster INC umleite und es so scripte, dass er bei /carsell sozusagen "ein Auge zudrücken" soll ^^ . Ist sowas machbar ? Oder habt ihr vielleicht noch eine besser Lösung für mich? Dieses Problem scheint so klein zu sein, behindert jedoch meine ganze Arbeit ?(


    Viele Grüße,


    Stylerboy

    Naja Thread kann geschlossen werden, habe das Problem umgangen.


    Für alle, die das gleiche Problem haben und nicht wissen wie sie es beheben können, habe ich einen Vorschlag um dieses zu umgehen. Dafür ändert man den /makeleader Befehl ein bisschen.


    Man setzt diese Teile unter " SetPlayerSkin(para1, PlayerInfo[para1][pChar]); " im /makeleader Befehl :
    OnPlayerUpdate(para1);
    gPlayerLogged[para1] = 0;
    SendClientMessage(para1, COLOR_YELLOW, "Du wurdest automatisch ausgeloggt, logge dich bitte mit /login [Passwort] ein!");
    TogglePlayerControllable(para1, 0);
    Wenn sich der Spieler dann einloggt, bekommt er den richtigen Skin zugewiesen. ;)


    Viele Grüße,


    Stylerboy

    Soweit ich weiß, ist hier eig alles


    Ihr könnt euch das ja angucken:
    if(strcmp(cmd, "/makeleader", true) == 0 || strcmp(cmd, "/ml", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Befehl: /makeleader [playerID/playerName] [Number(1-13)]");
    return 1;
    }
    new para1;
    new level;
    para1 = ReturnUser(tmp);
    tmp = strtok(cmdtext, idx);
    level = strval(tmp);
    if(level > 13 || level < 0) { SendClientMessage(playerid, COLOR_GREY, " Gehe nicht unter Nummer 1 oder über Nummer 13!"); return 1; }
    if (PlayerInfo[playerid][pAdmin] >= 4)
    {
    if(IsPlayerConnected(para1))
    {
    if(para1 != INVALID_PLAYER_ID)
    {
    if(PlayerInfo[para1][pMember] > 0)
    {
    SendClientMessage(playerid, COLOR_GREY, " Dieser Spieler ist schon Member einer Familie / Fraktion!");
    return 1;
    }
    if(PlayerInfo[playerid][pAdmin] >= 4 && PlayerInfo[playerid][pAdmin] < 6 && para1 == playerid)
    {
    SendClientMessage(playerid, COLOR_GREY, "Du kannst dich nicht selber als Leader einer Fraktion einstellen!");
    return 1;
    }
    if(PlayerInfo[para1][pAdmin] >= 1 && PlayerInfo[playerid][pAdmin] < 6)
    {
    SendClientMessage(playerid, COLOR_GREY, " Du kannst keinen anderen Admin als Leader einer Fraktion einstellen!");
    return 1;
    }
    new ftext[256];
    new ptext[256];
    GetPlayerName(para1, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    PlayerInfo[para1][pLeader] = level;
    if(level == 0) { ftext = "hat dich zu einem Zivilisten gemacht"; gTeam[para1] = 1; PlayerInfo[para1][pChar] = 101; PlayerInfo[para1][pModel] = 101; }
    else if(level == 1) { ftext = "hat dir die Leaderrechte gegeben, um die Polizei zu leiten"; gTeam[para1] = 2; PlayerInfo[para1][pChar] = 288; PlayerInfo[para1][pModel] = 288; } //Police Force
    else if(level == 2) { ftext = "hat dir die Leaderrechte gegeben, um das FBI zu leiten"; gTeam[para1] = 2; PlayerInfo[para1][pChar] = 286; PlayerInfo[para1][pModel] = 286; } //FBI/ATF
    else if(level == 3) { ftext = "hat dir die Leaderrechte gegeben, um die Army zu leiten"; gTeam[para1] = 2; PlayerInfo[para1][pChar] = 287; PlayerInfo[para1][pModel] = 287; } //ARMY
    else if(level == 4) { ftext = "hat dir die Leaderrechte gegeben, um das Krankenhaus zu leiten"; gTeam[para1] = 1; PlayerInfo[para1][pChar] = 228; PlayerInfo[para1][pModel] = 228; } //Fire/Ambulance
    else if(level == 5) { ftext = "hat dir die Leaderrechte gegeben, um die LCN zu leiten"; gTeam[para1] = 5; PlayerInfo[para1][pChar] = 124; PlayerInfo[para1][pModel] = 124; } //La Cosa Nostra
    else if(level == 6) { ftext = "hat dir die Leaderrechte gegeben, um die Yakuza zu leiten"; gTeam[para1] = 5; PlayerInfo[para1][pChar] = 120; PlayerInfo[para1][pModel] = 120; } //Yakuza
    else if(level == 7) { ftext = "hat dir die Leaderrechte gegeben, um als Bürgermeister zu leiten"; gTeam[para1] = 1; PlayerInfo[para1][pChar] = 147; PlayerInfo[para1][pModel] = 147; } //Mayor
    else if(level == 8) { ftext = "hat dir die Leaderrechte gegeben, um die Hitmans zu leiten"; gTeam[para1] = 10; PlayerInfo[para1][pChar] = 294; PlayerInfo[para1][pModel] = 294; } //Hitmans
    else if(level == 9) { ftext = "hat dir die Leaderrechte gegeben, um die News Reporter zu leiten"; gTeam[para1] = 12; PlayerInfo[para1][pChar] = 188; PlayerInfo[para1][pModel] = 188; } //News Reporters
    else if(level == 10) { ftext = "hat dir die Leaderrechte gegeben, um die Taxi Company zu leiten"; gTeam[para1] = 12; PlayerInfo[para1][pChar] = 61; PlayerInfo[para1][pModel] = 61; } //Taxi Cab Company
    else if(level == 11) { ftext = "hat dir die Leaderrechte gegeben, um die Fahrschule zu leiten"; gTeam[para1] = 12; PlayerInfo[para1][pChar] = 171; PlayerInfo[para1][pModel] = 171; } //Driving/Flying School
    else if(level == 12) { ftext = "hat dir die Leaderrechte gegeben, um die Ballas zu leiten"; gTeam[para1] = 13; PlayerInfo[para1][pChar] = 102; PlayerInfo[para1][pModel] = 102; } //Ballas
    else if(level == 13) { ftext = "hat dir die Leaderrechte gegeben, um die Ruff Ryders zu leiten"; gTeam[para1] = 13; PlayerInfo[para1][pChar] = 270; PlayerInfo[para1][pModel] = 270; } //Ruff Ryders
    if(level == 0) { ptext = "zu einem Zivilisten gemacht"; }
    else if(level == 1) { ptext = "die Leaderrechte gegeben, um die Polizei leiten zu können"; }
    else if(level == 2) { ptext = "die Leaderrechte gegeben, um das FBI leiten zu können"; }
    else if(level == 3) { ptext = "die Leaderrechte gegeben, um die Army leiten zu können"; }
    else if(level == 4) { ptext = "die Leaderrechte gegeben, um das Krankenhaus leiten zu können"; }
    else if(level == 5) { ptext = "die Leaderrechte gegeben, um die LCN leiten zu können"; }
    else if(level == 6) { ptext = "die Leaderrechte gegeben, um die Yakuza leiten zu können"; }
    else if(level == 7) { ptext = "die Leaderrechte gegeben, um als Bürgermeister leiten zu können"; }
    else if(level == 8) { ptext = "die Leaderrechte gegeben, um die Hitmans leiten zu können"; }
    else if(level == 9) { ptext = "die Leaderrechte gegeben, um News Reporter leiten zu können"; }
    else if(level == 10) { ptext = "die Leaderrechte gegeben, um Taxi Company leiten zu können"; }
    else if(level == 11) { ptext = "die Leaderrechte gegeben, um die Fahrschule leiten zu können"; }
    else if(level == 12) { ptext = "die Leaderrechte gegeben, um die Ballas leiten zu können"; }
    else if(level == 13) { ptext = "die Leaderrechte gegeben, um die Ruff Ryders leiten zu können"; }
    format(string, sizeof(string), " Admin %s %s.", sendername, ftext);
    SendClientMessage(para1, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), " Du hast %s %s.", giveplayer, ptext);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    PlayerInfo[para1][pTeam] = gTeam[para1];
    SetPlayerSkin(para1, PlayerInfo[para1][pChar]);
    OnPlayerUpdate(para1);
    }
    }//not connected
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, " Du bist nicht befugt, diesen Befehl zu nutzen!");
    }
    }
    return 1;
    }