Grundwissen für Anfänger

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Ich habe hier einmal die Funktionen verschiedener Befehle und die Anwendungen aufgeschrieben


    AddPlayerClass (skin, Float:x, Float:y, Float:z, Float:Angle, weapon1, weapon1_ammo, weapon2, weapon2_ammo, weapon3, weapon3_ammo)
    Dieser Command muss unter OnGameModeInit gesetzt werden.
    Hiermit wird festegelegt welchen Skin mit welchen Waffen etc ein Spieler nehmen kann.
    Bei DM-Servern werden häufig mindestens 50 verschiedene Skins mit 50 verschiedenen Spawnpoints und verschiedenen Waffen zu Wahl gestellt.


    Hier bei gilt:
    skin Der skin mit dem der Spieler spawnen wird.
    Float:X Die X-Koordinate der Spawnposition.
    Float:Y Die Y-Koordinate der Spawnposition.
    Float:Z Die Z-Koordinate der Spawnposition.
    Float:Angle Die Richtung, in die der Spieler beim Spawn schauen soll.
    weapon1 Die erste Spawnwaffe für den Spieler.
    weapon1_ammo Die Anzahl an Munition für die erste Spawnwaffe.
    weapon2 Die zweite Spawnwaffe für den Spieler.
    weapon2_ammo Die Anzahl an Munition für die zweite Spawnwaffe.
    weapon3 Die dritte Spawnwaffe für den Spieler.
    weapon3_ammo Die Anzahl an Munition für die dritte Spawnwaffe.



    AddStaticVehicle (modelid, Float:spawn_x, Float:spawn_y, Float:spawn_z, Float:z_angle, color1, color2)
    Dieser Command muss ebenfalls unter OnGameModeInit.
    Hiermit wird im GameMode festgelegt, wo ein Fahrzeug zu stehen hat.
    Es können bis zu 700 Fahrzeuge in einen GameMode getan werden.
    Bei Reallife-Servern wird meistens der befehl /savecarspawn benutzt um das Auto InGame zu saven und nicht immer den Command ins GameMode zu schreiben.


    Hier bei gilt:
    modelid Die Model ID des Fahrzeugs.
    Float:X Die X-Koordinate des Fahrzeugs.
    Float:Y Die Y-Koordinate des Fahrzeugs.
    Float:Z Die Z-Koordinate des Fahrzeugs.
    Float:angle Die Z-Rotation des Fahrzeugs.
    color1 Farbe 1.
    color2 Farbe 2.


    AddStaticPickup (model,type,Float:X,Float:Y,Float:Z)
    Mit diesen Command wir ein sogenanntes Pickup erstellt. Ein Pick up ist nichts anderes als ein Symbol InGame.
    Ein Pick up kann verschiedene wirkungen haben, z.B. einen Spieler Teleporten. Dann benutzt man es als "Fahrstuhl"


    Beispiel:
    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    if (unten == pickup1);
    {
    SetPlayerPos(playerid,1572.6084,-1675.0166,28.3955); // dazu kommen wir noch
    SetPlayerInterior(playerid,0);
    SendClientMessage(playerid,#FFFF00:" Du bist nun auf dem Dach des LSPD´s");
    }
    if(oben == pickup);warte
    {
    SetPlayerPos(playerid,1579.8971,-1634.5642,13.5622);
    SetPlayerInterior(playerid,0);
    SendClientMessage(playerid,#FFFF00:" Du bist nun nicht mehr auf dem Dach");
    return 1;
    }


    Hier bei gilt:
    model Wie das Pickup aussehen soll. Hier kann man die verschiedenen Aussehen anschauen.
    type Typ des Pickups.
    Float:X X-Koordiante wo das Pickup angezeigt werden soll.
    Float:Y Y-Koordiante wo das Pickup angezeigt werden soll.
    Float:Z Z-Koordiante wo das Pickup angezeigt werden soll.

    GivePlayerMoney(playerid, money);


    Dieser Befehl ist nicht schwirig. Man kann ihn verschieden einsetzten.
    Zum einen dass man als Admin den Befehle /geld eingibt und dann Geld bekommt.
    Zum andren auch als Strafe bei einem tod. Z.b.


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (strcmp("/spenden", cmdtext, true, 10) == 0)
    {
    GivePlayerMoney(playerid,-500);
    SendClientMessage(playerid, Farbe, " Du hast 500$ gespendet"); // dazu kommen wir noch
    return 1;
    }
    return 0;
    }



    SendClientMessage(playerid, color, const message[]);
    Dieser Befehl ist ein sehr wichtiger und häufig verwendeter Befehl.
    Mit diesen Befehl gibt man dem Spieler eine Rückmeldung.
    SendClientMessage kann nur der ausführende(z.B. der der den Befehl eingibt) lesen.
    Z.B.
    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (strcmp("/kill", cmdtext, true, 10) == 0)
    {
    SetPlayerHealthy(playerid, 0 )
    SendClientMessage(playerid,FF0000, "Sterben ist keine Lösung, sondern nur ein Ausweg);. // hierbei ist FF0000 die Farbe
    return 1;
    }
    return 0;
    }

    Hier bei gilt:
    color: Wird ersetzt durch den Color Code oder durch eine Definition am anfang des Scriptes. Das ist nocheinmal genau in einem Tut beschrieben


    SetPlayerPos (playerid,Float:x,Float:y,Float:z)
    Mit diesem Command bestimmt man die Postition eines Spielers. Häufig verwendet man dies bei DM-Servern damit sich Spieler teleporten können.
    Diesen Command kann man als befehl aber auch in einem Pickup verwenden.
    Z.B.
    if(strcmp(cmd, "/airport", true) == 0)
    {
    SendClientMessage(playerid, COLOR_GREEN, "Willkommen am LS Airport");
    SetPlayerInterior(playerid,0); //id 0 ist das standart interior also die san andreas welt
    SetPlayerPos(playerid,X,Y,Z);//die cords musst du vorher am ort mit /save speichern
    return 1;
    }


    Hier bei gilt
    playerid ID des Spielers
    Float:x X Koordinate
    Float:y Y Koordinate
    Float:z Z Koordinate

    SetPlayerInterior(playerid,interiorid)
    Dieser Command muss immer bei SetPlayerPos dabei sein.
    Warum genau kann ich euch auch nicht erklären.


    Funktion: Setzt die Interiorwelt von "playerid" auf "interiorid".
    Wichtig: Die ID 0 steht für die Normale Spielerwelt.



    So ich hoffe es hat euch etwas geholfen.
    Ich weiß ich habe Dinge von Wiki kopiert, aber ich dachte das hier einmal kompakt zu machen wäre gut.
    Mein gesamtes Wissen(wenn es auch nicht viel ist) habe ich von der Breadfish Community.
    Einmal ein riesen Dank an euch.
    Und danke an Wiki^^


    MfG Weed

    Einma vorbei schaun lohnt sich
    www.prt-clan.com der GamerClan für GTA-SAMP.Wir haben einen leistungsstarken vServer und ein hoch entwickeltes RealLife Script der Marke eigenbau, zu 100% Selfmade.
    Bald geht der RL-Server on, seid alle dabei. Regestriert euch und fiebert mit!!!


    3 Mal editiert, zuletzt von Weed ()

  • SetPlayerHealthy(playerid, 0 )
    SendClientMessage(playerid,FF0000, "Sterben ist keine Lösung, sondern nur ein Ausweg. // hierbei ist FF0000 die Farbe
    Das gibt 26 Errors :P
    Es heist nicht Healthy und das SendClientMessage gehört mit "); abgeschlossen und FF0000 ist keine Farbe, sondern 0xFF0000FF


    Ich scripte NICHT mehr, ich möchte mit NIEMANDEM einen Server aufmachen habe auch NICHTS mehr mit LoH zu tun, also lasst es mit den PNs!

  • SA:MP Debug -> An den gewünschten Ort gehen / fahren -> /save


    /v [VehID] um ein Car zu spawnen.
    /vsel für eine Liste der Cars.
    /player_skin [SkinID] um einen anderen Skin auszuwählen.


    Edit:
    #define Bright Bad

  • ich will ja jetzt nicht irgendwie böse sein aber das gleiche bekommt man auch im wiki raus

  • Ich weiß ich habe Dinge von Wiki kopiert, aber ich dachte das hier einmal kompakt zu machen wäre gut.

    Noch fragen pille



    Das gibt 26 Errors :P
    Es heist nicht Healthy und das SendClientMessage gehört mit "); abgeschlossen und FF0000 ist keine Farbe, sondern 0xFF0000FF

    Ich habe das aus der "Hand " geschrieben deswegen sit die Farbe nicht richtig^^

  • Naja, sind einige Fehler drinne, hinter einer Zeile auf einmal ein "."
    Dann bei was anderen:
    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    if (unten == pickup1);
    {
    SetPlayerPos(playerid,1572.6084,-1675.0166,28.3955); // dazu kommen wir noch
    SetPlayerInterior(playerid,0);
    SendClientMessage(playerid,#FFFF00:" Du bist nun auf dem Dach des LSPD´s");
    }
    if(oben == pickup);warte
    {
    SetPlayerPos(playerid,1579.8971,-1634.5642,13.5622);
    SetPlayerInterior(playerid,0);
    SendClientMessage(playerid,#FFFF00:" Du bist nun nicht mehr auf dem Dach");
    return 1;
    }
    Was nebenbei noch 26 Errors ergibt, weil da eine } fehlt

  • wenn ich mein new.pwn abspeichere....was muss ich dann machen??


    weil...wenn ich dan GMX mache dann ist alle so wie vorher...un es verändert sich nicht:(


    Kann mir mal Jemand helfen bitte....ich will mein rl noch fertig bekommen ;(


    Gruß Splat

  • Du Öffnest dein Script und drückst F5.
    Dann kopierst du die .amx Datei in deinen Gamemode Ordner und machst den Server aus(mit exit) und dann einfach wieder an.


    So nun is das neue script drauf