Beiträge von Simon

    Guten Tag


    Ich habe eine Zone erstellt, wo keine waffen getragen werden sollen. nun muss ich ja ein timer erstellen, der alle paar sekunden abfrag ob er in dieser zone ist.
    nun ist meine erste frage dazu wie ich das mit dem timer mache das er alle paar sekunden abfragt ob er in der zone ist, und ob man das so machen kann das einem nicht die waffen weggenommen werden, sondern man nur die faust anlegen kann.


    hier die zone:


    new lsadmzone;


    //OnGameModeInit:
    lsadmzone = GangZoneCreate(1850.0753,-2658.5370,2055.6101,-2177.5970);//lsairport dm frei

    //edit:


    if(PlayerInfo[playerid][AdminLevel]>=PlayerInfo[giveid][AdminLevel])
    {
    new playernamecheck [MAX_PLAYER_NAME];
    GetPlayerName(playerid, playernamecheck, sizeof(playernamecheck)); //Hier wird nach dem Spieler Namen gefragt.
    if(strcmp("LsAirport",playernamecheck, true) == 0)
    {
    SendClientMessage(playerid,0xFF0000FF,"Du kannst keinen Bot kicken!!");
    }
    else
    {
    //hier wird der gekickt


    ich kann ihn immer noch kicken ^^

    das habe ich schon probiert klappt aber irgentwie net ^^


    also ich habe ein bot und der befehl ist /kicken, dieser soll aber nur gehen wenn der spieler den ich kicken will NICHT LsAirport heipt(so heißt mein bot^^).
    wenn ich auf false stelle, kann ich keinen mehr kicken.

    Guten Tag


    man kann ja abfragen verneinen: if(IsPlayerInAnyVehicle... >>>> if(!IsPlayer...


    wie kann man das hier verneinen?:


    new playernamecheck [MAX_PLAYER_NAME];
    GetPlayerName(playerid, playernamecheck, sizeof(playernamecheck)); //Hier wird nach dem Spieler Namen gefragt.
    if(strcmp("LsAirport",playernamecheck, true) == 0)//hier kommt kein warning
    {...


    meine lösung:


    new playernamecheck [MAX_PLAYER_NAME];
    GetPlayerName(playerid, playernamecheck, sizeof(playernamecheck)); //Hier wird nach dem Spieler Namen gefragt.
    if(!strcmp("LsAirport",playernamecheck, true) == 0)//hier kommt warning wegen dem "!" aber wie soll ich das verneinen?
    {...


    aber dann bekomme ich warn : warning 213: tag mismatch


    wenn er NICHT LsAirport heißt...


    ich bedanke mich schonmal


    mfg

    Guten tag
    Ich habe gerade ein Bot gescriptet, der da seine runden dreht ^^
    über dem bot soll nun ein 3dtextlabel stehen. 3dtextlabel kann ich machen aber wie packe ich den über den bot?


    mein bot:


    #include "a_npc"


    new CARBOTCAR;


    public OnGameModeInit()
    {
    ConnectNPC("LsAirport","LsAirport");// erstes carbot steht für den namen hier im script, 2tes wie der record heißt!!!!
    CARBOTCAR = CreateVehicle(571, 2000.0, 2000.0, 2000.0, 7.0, 0, 0, -1);//
    return 1;
    }


    OnPlayerSpawn(..)
    {
    if(IsPlayerNPC(playerid))
    {
    new botname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, botname, sizeof(botname));
    if(!strcmp(botname, "LsAirport", true))
    {
    PutPlayerInVehicle(playerid, CARBOTCAR, 0);
    }
    }
    return 1;
    }

    kann das vllt jemand nochmal genauer erläutern?


    ich verstehe das so: man erstellt eine zone. doch wie CreatGangZone?
    und wie fragt man ab ob er in dieser zone ist.

    da hat wohl jemand recht ^^
    du verlangst gleich spviel auf einmal ^^
    dann kopieren und einfügen und du hast nichts gelernt ^^
    wenn du was nocht kannst sag uns wo du nicht weiter weißt.
    fang erstma mit was einfachem an und versuchs selber oder von fertigen scripts abzugucken und lernen.

    Guten Tag


    ich möchte, wenn jemand ein befehl eingiebt, das der dann in eine Skinauswahl kommt.
    ich habe zum bsp eine m arena, wo man nur boxt mit den verschiedenen kampfstilen. man bekommt auch den boxer skin. wenn er nun diese arena verlässt, soll er in eine BESTIMMTE skin auswahl kommen. beim connecten kann er sich lauter skins aussuchen, wenn er nun aber die dm arena verlässt, soll er net wieder wie beim anfang in die selebe skinauswahl kommen, sondern in eine andre, wo ich dann halt andere skins reinmache. ist das möglich, oder kann man einem nur in die skinauswahl wie beim connecten bringen? und wenn das möglich ist kann mir das einer erklären oder mir ein tut schicken?
    am besten ist es ihr macht es mit einem befehl, da ich nur sehn muss wie er in die skinauswahl kommt:


    if(strcmp(cmdtext, "/spawn", true)==0)
    {
    //hier kommen andere abfragen die ich dann selber mache
    //hier wie er zur skinauswahl kommt,aber nicht wie beim connecten, sondern eine andere skinauswahl mit bestimmten skins, wenn möglch
    return 1;
    }

    das mit der waschanlage wird nicht leicht ^^


    man kann höchsten da in die waschanlage fahren ein timer starten und dann ist das auto wieder blitze blank und heile aber das mit der odenplatte und so wird wohl nichts.
    das mit hotdog und cola ist kein problem eigentlich aber ich denke nicht das einer mal eben alles für dich scriptet.

    CMD:duty(playerid,params[] )
    {
    if(PlayerInfo[playerid][AdminLevel]>=2)
    {
    new Float:arm;
    new Float:hp;
    SetPlayerColor(playerid,0x950000FF);
    SendClientMessageToAll(0x800000FF,"__________________________________");
    SendClientMessageToAll(0x800000FF," Ein Admin ist nun on Duty!!! ");
    SendClientMessageToAll(0x800000FF,"__________________________________");
    SetPlayerHealth(playerid,100.0);
    SetPlayerArmour(playerid,100.0);
    GetPlayerArmour(playerid,arm);
    GetPlayerHealth(playerid,hp);
    if(arm <= 99.9)
    {
    SetPlayerArmour(playerid,100.0);
    }
    if(hp <= 99.9)
    {
    SetPlayerHealth(playerid,100.0);
    }
    }
    }


    klappt net ^^ also ich bekomme 100 hp und armor und meine farbe ist rot. aber sobald ich life verliere wird sie net aufgefült


    //edit: hab den fehler aber net die lösuung ^^


    fehler: das passiert nur wenn ich /duty mache ^^ also brauche ich verscheinlich doch nen timer der alle 3 sekunden abfragt wieviel life ich habe.

    ich weiß net genau wie das geht aber du musst es aufjeden fall mit einem timer machen.


    also wenn er stirbt muss irgentwas passieren, ne animation oder du portest den iwo in den himmel oder friedhof oder wie auch immer lass dir was einfallen ^^. dann startet auch gleichzeitig der timer und wenn der timer abgelaufen ist, spawnt der. ich kenne das von anderen servern, wenn du da stirbst, liegst du erst auf dem boden und danach siehst du alles von oben ^^ und iwan spawnst du.
    vllt kann man das ach so machen das er, wenn er 1 hp hat, das er dann ne animation macht und gefreezed ist und wenn der timer abgelaufen ist mit full life woanders spawnt.


    lass dir was einfallen^^

    endlich danke =)
    so wollte ich das haben ^^
    ich sagte doch man braucht kein timer ich wusste bloß net wie man die Abfrage macht. und nun weiß ich es^^
    danke


    //edit:


    ich habe nun:


    CMD:duty(playerid,params[] )
    {
    if(PlayerInfo[playerid][AdminLevel]>=2)
    {
    new Float:arm;
    new Float:hp;
    SetPlayerColor(playerid,0x950000FF);
    SendClientMessageToAll(0x800000FF,"__________________________________");
    SendClientMessageToAll(0x800000FF," Ein Admin ist nun on Duty!!! ");
    SendClientMessageToAll(0x800000FF,"__________________________________");
    SetPlayerHealth(playerid,100);
    SetPlayerArmour(playerid,100);
    GetPlayerArmour(playerid,arm);
    GetPlayerHealth(playerid,hp);
    if(arm < 100)
    {
    SetPlayerArmour(playerid,100);
    }
    if(hp < 100)
    {
    SetPlayerHealth(playerid,100);
    }
    }
    }


    habe es getestet aber irgentwie füllt sich das leben/armor net ^^

    hab ich^^
    scroll mal hoch ^^


    nochmal:


    CMD:duty(playerid,params[] )
    {
    if(PlayerInfo[playerid][AdminLevel]>=2)
    {
    SetPlayerColor(playerid,0x950000FF);
    SendClientMessageToAll(0x800000FF,"__________________________________");
    SendClientMessageToAll(0x800000FF," Ein Admin ist nun on Duty!!! ");
    SendClientMessageToAll(0x800000FF,"__________________________________");
    SetPlayerHealth(playerid,100);
    SetPlayerArmour(playerid,100);
    if(GetPlayerArmour(playerid) < 100) // HIER KOMMT EIN WARN
    {
    SetPlayerArmour(playerid,100);
    }
    }
    }


    C:\Users\Simon Siggelkow\Desktop\Pawno\filterscripts\gAdmin.pwn(5862) : warning 202: number of arguments does not match definition
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Warning.


    //edit: kann man nicht abfragen wieviel leben der hat? und sobald der unter xy leben hat wird das leben auf xy mit SetPlayerHealth gesetzt

    !!Lesen hilft Lösen!!


    nochmaL: ich möchte einen admin der on duty ist unverwundbar machen, deswegen auch soviel leben und armor. man kann nun mit der minigun draufballern bis 0 hp, deswegen soll life immer wieder gefüllt werden sobald es weniger wird.


    //edit: Lesen hilft Lösen²^^


    mein error:


    C:\Users\Simon Siggelkow\Desktop\Pawno\filterscripts\gAdmin.pwn(5862) : warning 202: number of arguments does not match definition
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Warning.


    da steht nicht "should turn a value"

    watt will ich den mit timer?!


    ich will einfach nur wenn ein Admin OnDuty ist, das der net geötetet werden kann!
    sobald der duty eingiebt, wird die farbe dunkel rot, sein leben und rückstung auf 9999999999. und sobald das leben unter 9999999999 geht soll es wieder auf 9999999999 gemacht werden (SetPlayerHealth....). ich muss aber dazu abfragen ob der unter ist: if(GetPlayerHealth(playerid) < 9999999) { das klappt aber net weil da was fehlt.
    und nun muss ich wissen was da fehlt.


    //edit: @ SiriiuzZ dat hatte ich vorher auch nur mit 9999999999 leben und armor


    //edit: kla geht es weiter ^^


    CMD:duty(playerid,params[] )
    {
    if(PlayerInfo[playerid][AdminLevel]>=2)
    {
    SetPlayerColor(playerid,0x950000FF);
    SendClientMessageToAll(0x800000FF,"__________________________________");
    SendClientMessageToAll(0x800000FF," Ein Admin ist nun on Duty!!! ");
    SendClientMessageToAll(0x800000FF,"__________________________________");
    SetPlayerHealth(playerid,100);
    SetPlayerArmour(playerid,100);
    if(GetPlayerArmour(playerid) < 100)
    {
    SetPlayerArmour(playerid,100);
    }
    }
    }
    und es geht immer noch net

    CMD:duty(playerid,params[] )
    {
    if(PlayerInfo[playerid][AdminLevel]>=2)
    {
    SetPlayerColor(playerid,0x950000FF);
    SendClientMessageToAll(0x800000FF,"__________________________________");
    SendClientMessageToAll(0x800000FF," Ein Admin ist nun on Duty!!! ");
    SendClientMessageToAll(0x800000FF,"__________________________________");
    SetPlayerHealth(playerid,9999999999);
    SetPlayerArmour(playerid,9999999999);
    if(GetPlayerHealth(playerid) < 9999999999) //die zeile wo warning auftritt
    {
    SetPlayerHealth(playerid,9999999999);
    }
    }
    }


    das CMD und alles ist richtig definiert


    C:\Users\Simon Siggelkow\Desktop\Pawno\filterscripts\gAdmin.pwn(5862) : warning 202: number of arguments does not match definition
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Warning.