Beiträge von cruzer

    Hi,


    ich habe gerade einige Videos im samp.com Forum gefunden (siehe hier).
    Ich komm einfach nicht drauf, wie die das gescriptet haben :pinch:


    Kennt jemand hier eine schlaue Rechnung, mit der man die Flugbahn der Kugel berechnen kann?
    Wäre demjenigen echt dankbar :)


    mfg cruzer

    Ich kann es machen aber ich weiß nicht, bis wann es fertig wird :D


    //edit: kannst du mir per PN die geslysten (kp ob man das so schreibt xD) Bilder schicken?

    Dazu brauchst du kein Randowm


    mach das so in etwa:
    //ganz oben rein:
    new menu = 1;


    //wenn man das Menü gezeigt bekommen soll:
    if(menu == 1)
    {
    //zeige ihm Menu Nr.1
    }
    else
    {
    //dann eben Menu Nr. 2
    }
    mfg cruzer


    Edit:
    nichts gedacht :whistling:
    1. du musst den Sring für den Spieler indexen
    2. hab ich vergessen dir zu sagen, dass du den string auch noch ändern musst


    man bin ich doof :pinch:


    nochmal:
    //ganz oben:
    new menu[MAX_PLAYERS] = 1;


    //dann abfragen, ob welches menu der Spieler bekommen soll (z.B. beim command, oder wenn alle im Ziel sind etc.):
    if(menu[playerid] == 1)
    {
    //dann zeige ihm Menu Nr. 1
    menu[playerid] = 2; // setzte den String auf 2
    }
    else
    {
    //Ansonsten Menu Nr. 2
    menu[playerid] = 1; // setzte den String auf 1
    }


    Das mit den Meus findest du hier


    mfg cruzer

    So wird wohl kein einziger Benutzer den aufwand machen, allein die url in seinen Browser einzugeben!


    Erklär doch mal, um was es da eig. geht etc.


    mfg cruzer

    sry, aber ich hab leider kein gf und werde in mir sicher auch nicht dowloaden (sind sowieso schon genug downloads :P )
    wenn du die definitionen postest, kann ich es dir machen ;)

    Mach das erstmal ganz unten in dein Script:
    stock strget(strx[], pos, search = ' ') {
    new arg, ret[128], idxx;
    for (new i = 0; i < strlen(strx); i++) {
    if(strx[i] == search || i == strlen(strx) || strx[i + 1] == 10) {
    arg++;
    if (arg == pos + 1){
    ret[i-idxx] = EOS;
    return ret;
    } else if (arg == pos)
    idxx= i+1;
    }
    else if (arg == pos)
    ret[i - idxx] = strx[i];
    }
    return ret;
    }


    Dann erstmal den /addweapon command:
    if(strcmp(strget(cmdtext,0),"/addweapon",true)==0) //hier wird abgefragt, ob die eingabe des Spielers "/addweapon" ist.
    {
    if(!strlen(strget(cmdtext,1))) //hier wird abgefragt, ob man den Befehl mit der ID eingegeben hat...
    {
    GivePlayerWeapon(playerid,cmdtext[11], 1000); //hier wird dem Spieler die Waffe und 1000 Munition gegeben...die Munition kannst du noch ändern
    }
    else//wenn er die id nicht angegeben hat...
    {
    SendClientMessage(playerid,0xAA3333AA,"Verwendung: /addweapon [ID]"); //...senden wir im eine Nachricht.
    }
    return 1; //wir geben einen wert zurück
    }


    Dann zu dem /teleport command:
    if(strcmp(strget(cmdtext,0),"/teleport",true) == 0) //genau so wie oben
    {
    if(!IsPlayerConnected(ziel)) // wenn der andere Spieler NICHT online ist...
    {
    SendClientMessage(playerid,0xAA3333AA,"Dieser Spieler ist nicht online."); //...dann senden wir eine nachricht...
    return 1;//...und brechen den vorgang ab.
    }
    if(!strlen(strget(cmdtext,1)))//das selbe wie oben
    {
    SendClientMessage(playerid,0xAA3333AA,"Verwendung: /teleport [ID]");
    return 1;
    }
    new Float:x, Float:y, Float:z; //wir erstellen 3 floats
    GetPlayerPos(strval(strget(cmdtext,1)),x,y,z); //speichern die positionen des Spielers ab,
    SetPlayerPos(playerid,x+2,y,z); //und setzten ihn da hin....
    return 1;
    }


    Das letzte ist ein wenig aufwendig und dazu hab ich erlich gesagt im mom keine Lust, weil es schon ziemlich spät ist :D
    ich werd mal morgen schauen, ob ich das auch noch mache...


    aber die anderen sollten teoretisch funktionieren. (nicht getestet)


    mfg cruzer

    Ich weiß ja nicht, wie dein Führerschein-System aufgebaut ist...
    desshalb must du einfach ein paar sachen einfügen ;)


    //ganz oben im script:
    new punkte[MAX_PLAYERS];


    //dann bei OnPlayerCommandText:
    if(strcmp(strget(cmdtext,0),"/punktegeben",true)==0)
    {
    if(/*abfragen, ob Spieler ein Cop ist*/)
    {
    punkt[cmdtext[13]]++;
    if(punkte==10)
    {
    //funktion, um den Führerschein weg zu nehmen...
    }
    }
    else
    {
    //evtl. Nachricht senden, wie "Du bist kein Cop" o.Ä.
    }
    }


    Nicht getestet!!
    bin mir nicht 100%ig sicher, ob es funktioniert...


    mfg cruzer

    Wann soll man die Punkte bekommen?
    Wass soll passieren wenn Team x y Punte hat?

    Das war zwar nicht die Antwort auf meine Fragen, aber versuch es mal so:


    //Ganz oben im Script:
    new Team1;
    new Team2;


    new gTeam[MAX_PLAYERS];
    //kann man auch noch auf mehr Teams erweitern....


    //Dann bei OnPlayerDeath:
    if(gTeam[playerid] == 1)
    {
    Team2++; //team 1 erhält einen Scorepoint...
    }
    else
    {
    Team1++;
    }


    //dann bei OnPlayerUpdate:
    new string[200];
    format(string,sizeof(string),"[Team1] %d : %d [Team2]",Team1, Team2);
    SetGameModeText(string);


    sollt eig. so fuktionieren ;)
    mfg cruzer

    Erklär das mal mehr...
    Wann soll man die Punkte bekommen?
    Wass soll passieren wenn Team x y Punte hat?


    mit so wenig Infos kann keiner etwas anfangen!

    Zitat

    Ich will, dass der Spieler wenn er gestorben ist nicht sterben kann 8|

    das geht nicht :D
    du kannst machen, dass der andere dan auch gekillt wird o.Ä. :P

    nicht wirklich aufwendig...
    und dann auch noch mit <table> gemacht
    ich denke, du solltest dich mal mit divs beschäftigen, wenn du das machen willst.
    wenn es dein erstes Design ist, dann ist es ein guter Anfang aber ist jetzt nicht so klasse geworden ;)
    mfg

    man könnte eine Funktion einbauen, die checkt, ob der spieler leben verliert,
    und dann dem spieler ein Mehrfaches vo dem Verlust abziehen...
    aber dann ist das Problem, dass man auch mehr Leben verliert, wenn man i-wo runterfällt...


    ne 100% Lösung gibt es nicht!
    mfg

    Ich glaube es gibt da so ne Faustformel...
    desto besser der Root (RAM / PROZESSOR) desto schwieriger werden DDOS Attaken
    was auch logisch erscheint, denn so hält der Root mehr aus und der Hacker braucht mehr Zombies ;)
    mfg

    junge, junge
    wenn man keine Ahnung vom scripten hat, dann sollte man besser nichts sagen! :cursing:
    return 0 nur machen wenn du weißt, was du da tust!
    return 0 heißt so viel wie "Ende im Gelende"
    also mach im FS alle returns wieder auf 1!
    nur das letzte (vor der Klammer die den public zu macht) lässt du auf return 0


    hast du vlt. ganz unten im FS eine elsefunktion?


    also so z.B.
    if(command)
    {
    ...
    return 1;
    }
    if(command)
    {
    return 1;
    }
    else//das meine ich
    {
    ...
    return 1;
    }
    //edit: wenn du das so wie im bsp. hast, dann mach die else-funktion weg.


    //edit²: das mit keine Ahnung ging an die, die das mit return 0 geschrieben haben ;)