Scriptbare Miniguns erstellen, Hilfe!

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 will (im englischen "static Miniguns") erstellen.
    Mit der Objekt ID: 2985
    Habe schon folgendes:
    forward AddBase(Float:X, Float:Y, Float:Z, Float:Rx, Float: Ry, Float: Rz);
    public AddBase(Float:X, Float:Y, Float:Z, Float:Rx, Float: Ry, Float: Rz)
    {
    CreateObject(2985, X, Y, Z, Rx, Ry, Rz);
    return 1;
    }

    Aber ich muss die mit Minigun = CreateObject machen oder so.
    Und ich will das mit ID machen.
    Es soll nachher so sein:
    forward IsNearBase(Float:radi, playerid, Float:x, Float:y, Float:z);


    Dafür muss er das irgendwie abfragen, indem er bei AddBase das mit Base = CreateObject macht.
    Aber dann muss das noch mit Base[ID] == CreateObject sein.
    Das kriege icih alles nicht hin.
    Ich will nur noch abfragen, mit "IsNearBase"
    eig. nur so:
    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
    ----new vehicleid = GetPlayerVehicleID(playerid);
    ----if(newkeys & KEY_FIRE)
    ----{
    --------if(IsPlayerNearBase(playerid))
    --------{
    ------------//Bla bla bla
    ------------//Und so weiter
    --------}
    ----}
    }
    Die "----" sind nur zum Abstand, wegen des Klammerverhaltens.


    MfG
    Atta(Oo);

    Einmal editiert, zuletzt von AttachObject(Oo); ()

  • Such dir mal nen scripter du postest nur müll


    ey sowas kann man nun nicht gebrauchen. vlt lehr er es grade. du hast bestimmt auch mal sowas gepostet. Kein Meiter fält von himmel!!! also ne , das geht garnicht.


    edit1: ist zum es (nach er es ...)

    Teamspeak zum Quatschen?

    IP: 217.79.182.216:9999

    Jeder kann Semi-Permanent Channel erstellen ;)

  • Danke erstmal, für die Antworten,
    und danke, dass ihr mich "beschützt" habt.
    Denn dieser Kerl, SpeedFight2 der nervt JEDEN der PAWN nicht kann.
    Und mekert(schreibt man das so ? O_o) ihn voll.


    Er will bloß Beiträge.
    Ich werde ihn jetzt, nachdem ich hier auf "Erstellen" geklickt habe, über den "Melden" Button melden.


    B2T: Ich werde evtl. ne Suchanfrage im Sponsoring Bereich machen.


    //EDIT B2T:
    Einer hat mir ein wenig geholfen, aber brauche dennoch Hilfe:
    Habe es so gemacht:
    http://pastebin.com/2SUk904d


    Und zum Abfragen, ob der Spieler in der Nähe ist, einfach GetPlayerMinigun:
    public GetPlayerMinigun(playerid)
    {
    for(new i;i<MINIGUN;i++)
    {
    if(Minigun[i][miniErstellt] == true)
    {
    new Float:x,Float:y,Float:z;
    GetObjectPos(Minigun[i][miniObj],x,y,z);
    if(IsPlayerInRangeOfPoint(playerid,3.0,x,y,z))
    {
    return i;
    }
    }
    return -1;
    }


    Nur das speichern kriege ich net hin, das steht in der Pastebin.
    Bitte hierbei noch helfen!


    MfG
    Atta(Oo);

  • Hey , ich weiß jetzt nicht ob es dir hilft , aber wenn du gerade erst PAWNO lernst , schau dir vielleicht mal paar Tutorials von

    • MrMonatTutorials
    • NemesusScripts


    an. Desweiteren zu dein Problem , vielleicht hilft dir das Video ja weiter :
    http://www.youtube.com/watch?v=Giz7YRMZzYg


    MFG <3

    I - Am - so ....

    ┏━━━┓
    ┃┏━━┛
    ┃┗━━┳━━┳┳━━┓
    ┃┏━━┫┏┓┣┫┏━┛
    ┃┗━━┫┗┛┃┃┗━┓
    ┗━━━┫┏━┻┻━━┛

  • ja willst du die aus einer datei laden oder im script die orte schon definieren??? wenn aus datei welches datei system willst du benutzen ??^^ Es gibt Dini, fwrite, SII, MySQL (nicht zu empfehlen als anfänger ;))
    MfG Paddy

    Zitat

    naja aufm homeserver mit kumpel getestet und nix laggt von daher sollte nen richtiger server mit sowas keine probs haben

    *an Kopf schlag
    sowas kommt Raus wenn man erst absendet ohne nachzudenken. Bitte Leute Hirn einschalten beim Posten...

  • Mach aus for(new i;i<MINIGUN;i++) 
    Das hier: for(new i;i<MINIGUNS;i++)
    außerdem wird AddBase(string); nicht funktionieren. Am besten holst du dir per sscanf die Parameter aus dem String:

    new Float:x,Float:y,Float:z,Float:rx,Float:ry,Float:rz;
    sscanf(string,"p|ffffff",x,y,z,rx,ry,rz);
    //bzw für sscanf2:
    sscanf(string,"p<|>ffffff",x,y,z,rx,ry,rz);
    AddBase(x,y,z,rx,ry,rz);
    die Werte müssen dann so in der Datei gespeichert werden:

    Code
    X|Y|Z|RX|RY|RZ
  • alles, aber BITTE KEIN sscanf!
    und kannst du mir das nochmal komplett neu erklären ?
    vllt. es so posten wie ich es brauche ?
    Also die Funktion AddBase wird generel verwendet.
    die Funktion AddPlayerBase, dann wird eine Minigun erstellt und sie wird in einer Datei gespeichert.
    also bei /Minigun wird dann AddPlayerBase ausgeführt.
    Und bei OnGamModeInit sollen dann die ganzen Miniguns, die ich vorher per /minigun erstellt habe, erstellt werden, automatisch vom Script mit normal AddBase.
    Und wie ihr seht, geht das nicht so ganz.
    Kann mir einer nochmal den Code so machen wie ich es will ?
    Nicht das ganze andere gezeugse, nur das, wie X,Y,Z,rX,rY und rZ in einer Datei gespeichert werden können, und ausgelesen werden können, und bei AddBase(Float:X, Float:Y, Float:Z, Float:rX, Float:rY, Float:rZ) verwendet werden können.


    MfG
    Atta(Oo);

  • Habe ein Problem mit Haxlers Code, er sagte mir (ICQ) das er mir versichert, dass seine Codes immer stimmen O_o


    Haxler 10:25
    "kann dir versicher, dass meins funktioniert"


    Hier der Code
    http://pastebin.com/C7SzMsPT

  • Das ist auch nicht der Code den ich dir geschickt hab ;D


    stock GetPlayerMinigun(playerid,Float:radius)
    {
    for(new i;i<MINIGUNS;i++)
    {
    if(Minigun[i][miniErstellt] == true)
    {
    new Float:x,Float:y,Float:z;
    GetObjectPos(Minigun[i][miniObj],x,y,z);
    if(IsPlayerInRangeOfPoint(playerid,radius,x,y,z))return i;
    }
    }
    return -1;
    }
    edit: falsch kopiert

  • Habe ICQ2Go da gibts leider keinen Verlauf von gestern :/
    Du hast es mir so gesckickt ;)
    Aber hast es jetzt schnell geändert ;)


    Aber geht :thumbup:

  • Zitat

    Du hast es mir so gesckickt ;)
    Aber hast es jetzt schnell geändert ;)


    1. Verwend ich für sowas keine Public-Funktion
    2. Hab ich den Code gerade genau so ausm Verlauf kopiert
    3. Denkt bloß nicht dass ich dir jetzt noch helf ;D


    edit: außerdem

    Zitat

    dass seine Codes immer stimmen O_o


    hab ich nie gesagt ;D Ich hab dir gesagt du sollst die Codes nochmal angucken, da ich sie nur in Icq kurz geschrieben hab.

    Einmal editiert, zuletzt von Haxler ()