Beiträge von Sry4pwn

    naya, ich denke mir bei geschwindigkeit kann man schon mal was wegnehmen, meinetwegen muss der typ dann eben ne halbe sekunde länger warten bis er ne antwort kriegt...
    was er bei so ner for-schleife jedoch nicht muss, ausser der prozessor is von 1970...^^


    oder wieviel macht sowas aus. Bemerkt man da wirklich einen unterschied wenn das ausführen eines cmds etwas länger dauert ?

    Habe eine Frage zum ressourcensparen...
    am einfachsten erkläre ich mein anliegn einfach durch folgendes beispiel:
    (Dabei möchte ich bei einem bestimmten cmd abfragen ob überhaupt 2 cops online sind, sonst funktionierts nicht. !)


    hier die erste variante:

    cmd (...)
    {
    new found;
    for(new i =0; i<MAX_PLAYERS; i++) {
    if(isCop(i)) found++;
    }
    ...if(found>=2) {...}
    }


    oder eben die zweite:

    cmd (...)
    {
    new found;
    for(new i =0; i<MAX_PLAYERS; i++) {
    if(isCop(i)) found++;
    if(found>=2) break;
    }
    ...if(found>=2) {...}
    }



    Welche von beiden Varianten ist ressourcensparender... ?

    Jetz speichert ers aber als float, wer will das schon.


    Setpvarint will einen int.
    Wenn du etwas mit einer dezinalzal multiplizierst, kommt ein float raus.


    Such mal nach floatround ;)

    dann solltest du mal ganz von vorne anfangen...
    was haben so leute wie du in so nem forum verloren...^^


    was bringt dir das, wenn dir jetzt jemand den fertigen code schickt ?
    der sinn an der scripting-seite ist, dass man sich austauscht und den anderen hilft,


    nicht dass man die arbeit für andere macht


    wenn du im sa-mp wiki nicht lesen kannst, dann nochmal die funktion gibt eine zahl zwischen 0 und der zahl die du als parameter eingesetzt hast -1 zurück.
    also eine zahl zwischen 0-24 wäre dann
    random(25);



    in deinem fall könntest du das zB mit einem switch(random(4)) umsetzen.
    Dann machst du eben 4 cases und in jedem setzt du den checkpoint eben an einen anderen punkt.

    ich denk mal die wollten dir hier alle helfen.
    Mir wäre es ach lieber, wenn sie mir sagen dass beides schrott is, bevor sie mir sagen welcher besser is.


    achja und zu deiner aussage die neuen pc's kosten 800-1000€, würde ich nichtmal so sagen...
    vielleicht high-end pc's, aber ich denke für 500-600€ lässt sich doch schon einiges machen...

    das is ja mal kompletter schwachsinn das so zu erklären


    bei einer for schleife stehen 3 sachen in den klammern.


    also
     for(new i=0;i<15;i++) {
    GivePlayerMoney(i, 100);
    }
    wenn dass so aufgebaut ist, wird im ersten teil mit new i=0 eine neue variable deklariert.
    im zweiten teil wird eine bedingung abgefragt... also solange die im 1. teil erstellte variable i zB kleiner als 15 ist wird die for-schleife nochmals ausgeführt.
    im dritten teil wird eine aktion durchgeführt, wie zB dass i um eins erhöht wird, sonst würde die bedingung im 2. teil nie false sein und es würde eine endlosschleife entstehen.
    m vierten teil also innerhalb der { } wird dann die aktion ausgeführt, also bei der oberen schleife würde dann den ersten 15 leuten auf dem server geld gegeben werden ^^


    du musst nicht genau i verwenden, das ist nur ein sehr geläufiger bezeichner für eine variable in for-schleifen...
    weiter gehts mit j, k, l...


    in samp wirds oft verwendet, um eine aktion bei allen Spielern durchzuführen...
    so wird i als playerid verwendet..


    oder du kannst eben auch aktionen verschieden oft durchführen lassen...

    ähm du hast DamageLabel schonma nich deklariert


    du musst das so machen:


    new DamageLabel[playerid] = Create3DTextLabel(string,0xFF0000FF,0.0,0.0,0.0,20.0,-1,0);

    am besten machst du dir erstmal klar, wie du speichern willst.
    entscheide dich für PVars oder arrays bzw enums.


    Beides ist nur unnötig kompliziert.
    Ich würde PVars benutzen, ist aber bei jedem seine sache


    das müsste dann beim speichern so aussehen:


    dini_IntSet(Spielerdatei,"Rank",GetPVarInt(playerid,"Rank")]);

    naya, da er den z-Angle auch beibehalten will :


    new pAuto[MAX_PLAYERS];
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    new Float:x,Float:y,Float:z, Float:a;
    switch(dialogid == 6)
    {
    GetPlayerPos(playerid,x,y,z);
    GetPlayerFacingAngle(playerid, a);

    case 1: {
    switch(listitem)
    {
    case 0: {
    SendClientMessage(playerid,Pink,"Sie haben sich ein Fahrzeug 1 gespawnt");
    pAuto[playerid] = CreateVehicle(DeineVehicleId,x,y,z,a,0,0,-1);
    PutPlayerInVehicle(playerid,pAuto[playerid],0);
    return 1;
    }
    case 1: {
    SendClientMessage(playerid,Pink,"Sie haben sich ein Fahrzeug 2 gespawnt");
    pAuto[playerid] = CreateVehicle(DeineVehicleId,x,y,z,a,0,0,-1);
    PutPlayerInVehicle(playerid,pAuto[playerid],0);
    return 1;
    }
    case 2: {
    SendClientMessage(playerid,Pink,"Sie haben sich ein Fahrzeug 3 gespawnt");
    pAuto[playerid] = CreateVehicle(DeineVehicleId,x,y,z,a,0,0,-1);
    PutPlayerInVehicle(playerid,pAuto[playerid],0);
    return 1;
    }
    }
    }
    }
    return 1;
    }