Beiträge von Kaliber

    dann verzichte ich aufs spielen. (nutze Firefox)


    Sehr naiv ^^


    Deine Entscheidung, habe es mal eben mit dem Internet Explorer getestet, der führt das auch (einigermaßen) aus, nunja da stirbt man nicht...wieso auch immer :D


    Also wenn man es richtig spielen will, muss man Chrome verwenden :S

    Guten Abend liebe Community,


    ich habe heute über den Tag ein kleines Game geschrieben ^^


    Es basiert auf Javascript/Ajax und ist ein kleines FUN Game :D


    Kürze Erklärung:


    • A,W,S,D bewegen

    • [LEERTASTE] schießen

    • Kleine Gegner töten und in Runde 10/20/30... Entgegner (Drachen)

    • Man hat selbst 100Hp

    • Es gibt Bonuse die gespawnt werden (Speed und Leben)


    Das hier soll keine große Werbung werden, da es nur ein kleines Game, ich wollte aber mal gerne eure Meinung dazu wissen, dass es nichts professionelles ist, erkennt man daran, dass ich das an 1nem Tag geschrieben habe :D


    Einfach mal paar Feedbacks und würde mich über konstruktive Kritik freuen (Warnung: es ist ziemlich schlecht getriggert ^^)


    Link zu der Seite: http://squatsch.co.de


    und viel Spaß wünsche ich euch :D


    //Edit: Google Chrome benutzen....


    mfg. :thumbup:

    Omg, jetzt verstehe ich, was du machen willst, einen makeleader befehl :wacko: Sollte mir das mal besser durchlesen :D


    Schreibe es so:


    dcmd_makeleader(playerid, params[])
    {
    if(!IstSpielerAdmin(playerid, 4)) return SendClientMessage(playerid,ROT,"Du bist kein Admin.");
    new pID,frakid;
    if(sscanf(params,"ud", pID, frakid)) return SendClientMessage(playerid,GELB,"Verwendung : /makeleader [ID] [Fraktionsid]");
    if(frakid > 13) return SendClientMessage(playerid,ROT,"So viele Fraktionen gibt es nicht!");
    if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,ROT,"Unglültiger Spieler!");
    if(IstSpielerInFraktion(pID,frakid) == frakid) return SendClientMessage(playerid,ROT,"Dieser Spieler ist schon in dieser Fraktion.");
    new string[128],name[24];
    GetPlayerName(pID,name,24);
    sSpieler[pID][Fraktion] = frakid; //das hast du vergessen
    format(string,sizeof(string),"Du bist der Leader von %s",GetFraktionsName(pID));
    SendClientMessage(pID,BLAU,string);
    format(string,128,"Du hast %s Leader der Fraktion %s gemacht !",name,GetFraktionsName(pID));
    SendClientMessage(playerid,BLAU,string);
    return 1;
    }


    mfg. :whistling:

    Schreib deinen Befehl mal so:


    dcmd_makeleader(playerid, params[])
    {
    if(!IstSpielerAdmin(playerid, 4)) return SendClientMessage(playerid,ROT,"Du bist kein Admin.");
    new pID,frakid;
    if(sscanf(params,"ud", pID, frakid)) return SendClientMessage(playerid,GELB,"Verwendung : /makeleader [ID] [Fraktionsid]");
    if(frakid > 13) return SendClientMessage(playerid,ROT,"So viele Fraktionen gibt es nicht!");
    if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,ROT,"Unglültiger Spieler!");
    if(IstSpielerInFraktion(pID,frakid) == frakid) return SendClientMessage(playerid,ROT,"Dieser Spieler ist schon in dieser Fraktion.");
    new string[128],name[24];
    GetPlayerName(pID,name,24);
    format(string,sizeof(string),"Du bist der Leader von %s",GetFraktionsName(pID));
    SendClientMessage(pID,BLAU,string);
    format(string,128,"Du hast %s Leader der Fraktion %s gemacht !",name,GetFraktionsName(pID));
    SendClientMessage(playerid,BLAU,string);
    return 1;
    }


    und die Funktion (stock) so:


    stock GetFraktionsName(playerid)
    {
    new string[64];
    switch(sSpieler[playerid][Fraktion]) {
    case 0: format(string,64,"Zivilist");
    case 1: format(string,64,"LSPD");
    case 2: format(string,64,"FBI");
    case 3: format(string,64,"Bundeswehr");
    case 4: format(string,64,"Sanitäter");
    case 5: format(string,64,"Russische Mafia");
    case 6: format(string,64,"Hitman");
    }
    return string;
    }


    mfg. :thumbup:

    Ja hatte es auch erst vorgehabt nur dann ist mir die andere Variante eingefallen^^
    Ich finde es angenehmer ohne diese bool werte aber ich kann es auch abändern das sollte kein Problem darstellen


    Eine andere Möglichkeit wäre einfach den Parameter optional zu machen ;)


    So hat man beides offen, nur leider wäre hier ein boolean dann nachteilhaft halt weil man 3 Werte braucht ^^


    mfg. :thumbup:

    Du musst das so schreiben, sonst wird die Schleife durch das return unterbrochen ^^


    if(!strcmp(cmd, "/buyhaus", true))
    {
    for(new i = 1; i <MaxHaus; i++) {
    if(!IsPlayerInRangeOfPoint(playerid,5.0,PlayerHaus[i][Hausx],PlayerHaus[i][Hausy],PlayerHaus[i][Hausz])) continue;
    if(strcmp(PlayerHaus[i][Owner],"Der Staat",true)) return SendClientMessage(playerid,WHITE,"Dieses Haus gehört schon jemandem !");
    if(PlayerInfo[playerid][pHauskey] != 0) return SendClientMessage(playerid,WHITE,"Du hast schon ein Haus!");
    new Namei[MAX_PLAYER_NAME], striing[128];
    GetPlayerName(playerid,Namei,sizeof(Namei));
    format(striing,sizeof(striing),"%s",Namei);
    PlayerHaus[i][Owner] = striing;
    PlayerInfo[playerid][pHauskey] = PlayerHaus[i][Hausid];
    SendClientMessage(playerid,WHITE,"Du hast dir erfolgreich ein Haus gekauft!");
    return 1;
    }
    return SendClientMessage(playerid,WHITE,"Du bist an keinem Haus!");
    }


    mfg. :thumbup:

    Du kannst einfach die Funktion SetPlayerHealth hooken, wenn er diese Funktion aufgerufen wird, kein Healhack und wenn er mehr heal hat als mit GetPlayerHealth und SetPlayerHealth zusammen gerechnet = Healhack...das mit den Automaten musst du einfach ne Range machen, wenn er da in dieser Range ist halt auch kein Healhack ;)


    mfg. :thumbup: