Beiträge von Simon

    also mit diesem vehicle plotter kannste so ne zone machen.. du musst dann auf "Gangzones and World Boundaries" gehen und dann auf "Use World Boundaries" und auf "Okay"


    dann haste es, aber vorsicht! er macht antstatt "." ein "," du musst dann sehen das du das umschreibst


    bsp: das giebt der vehicle plotter:


    SetPlayerWorldBounds(playerid, 2931,147, -782,4177, 548,8602, -3164,704);


    daraus musst du das machen:


    SetPlayerWorldBounds(playerid, 2931.147, -782.4177, 548.8602, -3164.704);

    ja :D


    also du kannst eine "gültigkeitszone" erstellen. du wirst immer zurück gestoßen wenn du aus der zone willst...


    also am besten packste das unter OnPlayerSpawn..


    ich nutze das programm xtreme vehicle plotter. du kannst es aber auch anders machen. dazu brauchste die koordinaten


    OnPlayerSpawn()
    {
    SetPlayerWorldBounds(playerid,minx,miny,maxx,maxy);
    return 1;
    }

    das das passwort verschlüsselt wird, musst du im script festlegen, das das gespeichert wird, musst du im script festlegen, die passwort abfrage must du posten..

    also erstmal danke


    ich glaube du weißt net was ich meine:D


    ich glaube wohl das ich 2 timer brauche..


    der eine geht 4 minuten, wenn der vorbei ist, soll ein gametext kommen, wo die zeit von 60 runterläuft..
    gleichzeitig wird ein 2. timer gestartet, der geht eine minute. wenn dieser vorbei ist, sollen alle gekickt werden.
    das kommt so hin, das alle bei 0 gekickt werden.


    ich muss eig nut wiessen wie man son countdown scriptet und wie der befehl ist um alle zu kicken


    der befehl um einen zu kicken:
    Kick(playerid);

    Guten Tag


    Ich habe gerade ein dcmd erstellt, mit dem ein restart des Servers angekündigt wird, zum beispiel wenn etwas neues auf den server soll.
    hier habe hierzu 2 fragen. Und zwar kommt bei /restart eine Meldung das der server in 5 minuten einen restart hat. dann wird ein timer von 4 minuten gestartet.
    wenn der abgelaufen ist, wird ein timer von 1ner minuten gestartet und es soll ein gametext kommen, wo die minute runter gezählt wird (60 , 59 , 58...). nachdem der 2. timer dann abgelaufen ist, sollen alle gekcikt werde. Bei dem >Countdown brauche ich hilfe, außerdem brauche ich den befehl um alle zu kicken.


    forward restart1();
    forward restart2();


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    dcmd(restart,7,cmdtext);//5
    return 1;
    }


    dcmd_restart(playerid,params[])
    {
    if(sscanf(params,"u"))
    {
    return SendClientMessage(playerid,COLOR_RED,"Benutzung: /restart");
    }
    if(SpielerInfo[playerid][alvl]<5)
    {
    return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin Level 5!");
    }
    else
    {
    SendClientMessageToAll(0x900000FF,"____________________________________________________________________");
    SendClientMessageToAll(0x900000FF,"______________****Server - Restart in 5 Minuten****_________________");
    SendClientMessageToAll(0x900000FF,"____________________________________________________________________");
    SetTimer("restart1",240000,1);
    }
    return 1;
    }


    public restart1()
    {
    //das die zeit runter läuft
    SetTimer("restart2",60000,1);
    return 1;
    }


    public restart2()
    {
    //alle Kicken
    return 1;
    }


    ich bedanke mich schonmal


    mfg

    also ich habe überhaupt keine ahnung wie ich das zu machen habe :D
    hier wie es ausehen soll:


    format(String,sizeof(String),"~b~Fahrzeug: ~w~%s~n~~b~Ort: ~g~HIER SOLL ORT ANGEZEIGT WERDEN~n~~b~Status:~n~~n~Geschwindikeit:~n~~w~%im/h~n~%ikm/h", PlayerVehicle[PlayerVehicleModelID], floatround(floatdiv(Speed, 1.609344), floatround_floor), floatround(Speed, floatround_floor));

    das meine ich auch.. das das viel einfacher geht...


    aber wiki ist down und habs vorher noch nie mit orte abfragen gemacht...

    Guten Tag


    Ich habe vor dem Binco in Ls ein pickup gesetzt. wenn man im pickup steht und /enter eingiebt, kommt man ins binco.(und in virtual world 1)
    dort soll man mir /kleidung in die skinauswahl kommen, was aber nicht klappt:


    if(strcmp(cmdtext, "/kleidung", true)==0)
    {
    if(binco[playerid] == 1)
    {
    ForceClassSelection(playerid);
    binco[playerid] = 0;
    }
    else
    {
    SendClientMessage(playerid,0xFF0000FF,"Du bist nicht im Binco!");
    }
    }

    achsoo. also man braucht wirklich jede koordinaten von jedem ort uns muss das dann im script abfragen.


    ich habe das vorher nie gemacht mit den orten.. also weiß da überhaupt nicht was ich machen soll.


    //edit: habe aus gAdmin was ich früher mal benutzt das mal herauskopiert. weiß nun aber nicht wie ich das abfragen soll..


    Habs als datei anhang, weils es mehr als 10000 zeichen sind :D

    öhh das wäre ne möglichkeit, aber sehr aufwendig.


    also ich müsste erstmal die ganzen koordinaten der einzelnden ort raussuchen, die dann im script abfragen und im speedometer einbauen.


    ich glaube das geht etwas einfacher, oder hoffe :D:D

    Guten Tag.
    Es giebt ja lauter Orte in San Andreas wie zum beispiel "Gangton" oder "Idlewood" oder "Palomino Creek"...
    ich habe ein Speedometer, mit status. Der Wagen wird mir ebenfalls angezeigt.
    nun würde ich gerne noch einbauen das der derzeitige Ort angezeigt wird.


    wie kann ich das denn abfragen? was muss ich alles definieren?


    könnte mir da einer helfen?

    ich weiß ja nicht wie du suchst ^^ aber da giebt es 1000ende objectstreamer....


    und mit dem freezen bis die map geladen ist, kannst du auch einfach so machen, wenn der spieler connected das er gefreezed wird, dann starteste ein timer und wenn der abgelaufen ist ist er unfreezed..

    ja sollte gehen... du musst die klammer der abfrage mit den mats schließen und danach ein else machen also:


    //
    if(genug mats blablabla)
    {
    //bekommt er waffe, mats werden abgezogen
    }
    else
    {
    //du hast net genug mats...
    }
    //

    zu 1 kann ich dir ein teil helfen. wie er aber vor dem auto stehen bleibt und die tür abgeschlossen ist weiß ich nicht.



    new sfpdauto[26];


    OnGameModeInit() //OnFilterScriptInit()
    {
    // ______SFPD______
    //Police Car
    sfpdauto[0] = CreateVehicle(597, -1616.3781,749.7031, -5.2422,179.6711, 86, 1, 800);
    sfpdauto[1] = CreateVehicle(597, -1604.5389,749.7536, -5.2422,173.0910, 86, 1, 800);
    sfpdauto[2] = CreateVehicle(597, -1612.8207, 750.2399, -5.4740, 180.0729, 86, 1, 800);
    sfpdauto[3] = CreateVehicle(597, -1608.3560,750.2009, -5.4736,180.3843, 86, 1, 800);
    sfpdauto[4] = CreateVehicle(597, -1600.4595,750.4750, -5.4728,180.6400, 86, 1, 800);
    sfpdauto[5] = CreateVehicle(597, -1596.3026,750.1548, -5.4718,181.7798, 86, 1,800);
    sfpdauto[6] = CreateVehicle(597, -1592.1467,750.4123, -5.4730, 179.6615, 86, 1, 800);
    sfpdauto[7] = CreateVehicle(597, -1588.1224, 750.5228, -5.4746, 177.7831, 86, 1, 800);
    sfpdauto[8] = CreateVehicle(597, -1584.0654, 750.5484, -5.4735,180.7048, 86, 1, 800);
    sfpdauto[9] = CreateVehicle(597, -1580.0497, 750.3355, -5.4797, 180.3170, 86, 1, 800);
    //Police Heli
    sfpdauto[10] = CreateVehicle(497, -1679.5835, 705.9642, 30.6016, 95.7204, 86, 1, 800);
    //Police Spezial
    sfpdauto[11] = CreateVehicle(601, -1623.3063, 649.8629, -5.4733, 90.1021, 0, 1, 800);
    sfpdauto[12] = CreateVehicle(528, -1622.8436, 653.5638, -5.4723, 90.5839, 0, 1, 800);
    sfpdauto[13] = CreateVehicle(427, -1639.8529, 649.9787, -5.4765, 269.3743, 86, 1, 800);
    sfpdauto[14] = CreateVehicle(427, -1639.0969 ,657.9473, -5.4834, 270.2426, 86, 1, 800);
    sfpdauto[15] = CreateVehicle(427, -1639.7167, 666.2165, -5.4834, 268.7720, 86, 1, 800);
    //Ranger
    sfpdauto[16] = CreateVehicle(599, -1640.3381, 674.0170, -5.1987, 269.2324, 86, 1, 800);
    sfpdauto[17] = CreateVehicle(599, -1640.2942, 678.0220, -5.1998, 270.1458, 86, 1, 800);
    sfpdauto[18] = CreateVehicle(599, -1640.4838, 682.0898, -5.2004 ,270.3937, 86, 1, 800);
    sfpdauto[19] = CreateVehicle(599, -1640.7704, 686.4244, -5.1992, 269.1693, 86, 1, 800);
    //Mopeds
    sfpdauto[20] = CreateVehicle(586, -1573.9181, 706.4676, -5.4727, 88.8371, 86, 1, 800);
    sfpdauto[21] = CreateVehicle(586, -1573.2808, 709.9452, -5.4731, 88.8948, 86, 1, 800);
    sfpdauto[22] = CreateVehicle(586, -1573.7507, 713.9541, -5.4733, 90.9377, 86, 1, 800);
    sfpdauto[23] = CreateVehicle(586, -1573.5592, 718.4440, -5.4714, 88.5575, 86, 1, 800);
    //Speedcars
    sfpdauto[24] = CreateVehicle(506, -1616.5947, 733.3229, -5.4716 ,359.0839 ,0 , 0, 800);
    sfpdauto[25] = CreateVehicle(415, -1612.3861, 732.8743, -5.4734, 0.1733, 0, 0, 800);
    return 1;
    }
    //ich hoffe so klappt es, habs bisher nur mit AddStaticVehicle gemacht..


    public OnPlayerStateChange(playerid, newstate, oldstate) // wenn er am steuer sitzt..
    {
    new vehicleid = GetPlayerVehicleID(playerid);
    if(newstate == PLAYER_STATE_DRIVER)
    {
    for(new j = 0;j<sizeof sfpdauto;j++)
    {
    if(vehicleid == sfpdauto[j])
    {
    if(gTeam[playerid] == TEAM_SFPD)
    {
    }
    else
    {
    SendClientMessage(playerid,ROT,"Du besitzt keinen Schlüssel für dieses Auto!");
    RemovePlayerFromVehicle(playerid); //hier wird der dann rausgeschmissen.
    }
    }
    }
    }
    return 1;
    }
    //so wolltest du es ja nicht.. somit kann ich dur nur zum teil helfen:


    OnPlayerEnterVehicle(..)
    {
    for(new j = 0;j<sizeof sfpdauto;j++)
    {
    if(vehicleid == sfpdauto[j])
    {
    if(gTeam[playerid] == TEAM_SFPD)
    {
    }
    else
    {
    SendClientMessage(playerid,ROT,"Du besitzt keinen Schlüssel für dieses Auto!");
    //das er stehen bleibt und die tüt net aufgeht...
    }
    }
    }
    return 1;
    }

    du fragst ab wieviele mats er hat.


    if(Spieler[playerid][job] == 1)
    {
    if(!strcmp(waffe,"Deagle",true))
    {
    if(Spieler[playerid][mats] >= 200)
    {
    GivePlayerWeapon(pID,24,50);
    format(string,sizeof(string),"Du hast %s eine Deagle verkauft",gname);
    SendClientMessage(playerid,hellblau,string);
    format(string2,sizeof(string),"%s hat dir eine Deagle verkauft",name);
    SendClientMessage(playerid,hellblau,string2);
    Spieler[playerid][mats] -= 200;
    }
    }
    }



    Guten Tag


    Ich habe den befehl /stats. wenn man den macht, soll sich ein dialog öffnen wo die informationen drinne stehen.


    das problem ist, das ich nicht weiß wie ich das genau machen muss.


    das habe ich:


    dcmd_stats(playerid,params[])
    {
    #pragma unused params
    new name[MAX_PLAYER_NAME], string[256], string2[256], string3[256], string4[256],string5[256],string6[256],string7[256],string8[256];
    GetPlayerName(playerid, name, sizeof(name));
    format(string, sizeof(string), "Name: %s", name);
    format(string2, sizeof(string2), "Score: %d", GetPlayerScore(playerid));
    format(string3, sizeof(string3), "Wanteds: %d", GetPlayerWantedLevel(playerid));
    format(string4, sizeof(string4), "Admin-Level: %d",SpielerInfo[playerid][alvl]);
    format(string5, sizeof(string5), "Tode: %d",SpielerInfo[playerid][Tode]);
    format(string6, sizeof(string6), "Kills: %d", SpielerInfo[playerid][Kills]);
    format(string7, sizeof(string7), "Spawns: %d", SpielerInfo[playerid][Spawn]);
    format(string8, sizeof(string8), "Warns: %d", SpielerInfo[playerid][Warning]);
    ShowPlayerDialog(playerid,DIALOG_STATS,DIALOG_STYLE_MSGBOX,"~~~~~STATS~~~~",string,"Okay","Okay");
    return 1;
    }
    es soll alles unter ein ander stehen:
    _____
    STATS


    Name: ...
    Score:...
    ...
    _______


    bisher steht nur:


    ____________
    STATS


    Name: ...
    ____________


    //edit:


    habs schon -.-


    dcmd_stats(playerid,params[])
    {
    #pragma unused params
    new name[MAX_PLAYER_NAME], string[256];
    GetPlayerName(playerid, name, sizeof(name));
    format(string, sizeof(string), "Name: %s\nScore: %d\nWanteds: %d\nAdmin-Level: %d\nTode: %d\nKills: %d\nSpawns: %D\nWarns: %d", name, GetPlayerScore(playerid), GetPlayerWantedLevel(playerid),SpielerInfo[playerid][alvl],SpielerInfo[playerid][Tode],SpielerInfo[playerid][Kills],SpielerInfo[playerid][Spawn],SpielerInfo[playerid][Warning]);
    ShowPlayerDialog(playerid,DIALOG_STATS,DIALOG_STYLE_MSGBOX,"~~~~~STATS~~~~",string,"Okay","Okay");
    return 1;
    }

    soweit ich weiß kann man auch einfach anstatt (true) (false) machen bzw atstatt (1) (0).


    ich glaube wenn man das einfach aus dem script entfernt, sind die marker trotzdem da, bin mit dabei aber nicht sicher..