Beiträge von KeksOfDeath

    wiso die doppelten? ich meine das so:
    public IsPlayerInArea(playerid, Float:minx, Float:maxx, Float:miny, Float:maxy)
    {//klammer auf nummer 1
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
    if(IsPlayerInArea(playerid,217.8673,-1255.2234,412.9872,-1034.9280))
    if((GetPlayerSkin(playerid) == 282))
    if (x > minx && x < maxx && y > miny && y < maxy)return 1;
    else
    {//klammer auf nummer 2
    GameTextForPlayer(playerid,"~r~TODESZONE",4000,1);
    }//klammer zu nummer 1
    }//klammer zu nummer 2


    return 1;
    }//klammer zu nummer 3

    if((GetPlayerSkin(playerid) == 282))
    warum sind da 2 klammern Oo?
    if(GetPlayerSkin(playerid) == 282)
    und ist jetzt nur ne vermutung, aber muss das nciht statt "public" "stock" heißen? (is nur vermutung)

    ich habe dir das gegeben:
    if(strcmp(cmdtext, "/gmx", true) == 0) {
    OnGameModeExit();
    SendRconCommand("gmx"); }

    warum machst du da das drauß?
    if(strcmp(cmdtext, "/gmx", true) == 0) {
    OnGameModeExit();
    SendRconCommand("gmx"); }
    return 1;
    }

    also ma das return 1; und } wieder wegnehmen

    ingame als rcon einloggen und dann /rcon gmx machenoder über die console
    sonst:
    if(strcmp(cmdtext, "/gmx", true) == 0) {
    OnGameModeExit();
    SendRconCommand("gmx"); }

    theoretisch (ja ich weiß, falsch geschrieben^^) ja, aber bei diesem befehl nicht, denn da werden die "jeden" ja in ihre teams aufgeteilt und dies geht nunmal nur einzelnd

    die habe ich extra rausgenommen, er ist neu und da wollt ich ihn nciht mit so viele zusätzlichen zeilen zupumpen, das originalscript war ja eigentlich:
    if (strcmp(cmdtext, "/tec9", true) == 0) {
    if(GetPlayerMoney(playerid)<=399) {
    SendClientMessage(playerid,red,"Du hast nicht genug Geld"); }
    else {
    GivePlayerWeapon(playerid, 32,50);
    GivePlayerMoney(playerid, -400);
    SendClientMessage(playerid,grau,"Die Tec9 (50 Schuss) hat dich 400$ gekostet"); }
    return 1;
    }
    aber das hätte ihn mehr verwirrt als geholfen

    ich glaub ich verstehe idhc jetzt falsch aber egal^^
    diese funktion nimmst sozusagen alle, man kann ja SendClientMessageToAll(farbe,"text"); und dann noch diese funktion und dahinter SendClientMessage(statt playerid:i,farbe,"text"); diese hätte genau die gleiche wirkung, da es an jeden gesendet wird, aber dann kann man die "jeden" halt noch aufteilen, in ihre teams, score, geld,... benutz deine fantasie

    erstmal ein paar kleine hilfen:
    http://samp.breadfish.de/wbb/index.php?page=Board&boardID=39
    und zu deinen waffen:
    if (strcmp(cmdtext, "/tec9", true) == 0) {
    GivePlayerWeapon(playerid, 32,50);//playerid,waffenid(hier die 32),munition (hier: 50)
    GivePlayerMoney(playerid, -400);//ihm werden 400$ abgezogen
    SendClientMessage(playerid,0xC0C0C0AA,"Die Tec9 hat dich 400$ gekostet"); //er bekomtm dann halt die nachricht
    return 1;
    }

    also, dann erstmal noch oben:
    static gTeam[MAX_PLAYERS];
    dann auch noch da:
    #define TEAM_FBI 0
    #define TEAM_WH 1 //steht für waffenhandel
    #define TEAM_COP 2
    so, wie ich das menu erstelle weiß ich selbst nciht, hab mich noch nie damit beschäftigt, das wird ja hier im tutorial stehen, aber bei den auswahlpunkten muss es dann heißen:
    if(gTeam[playerid] == TEAM_WH) {//das is dann das mit den waffen
    GivePlayerWeapon(playerid,waffenid,munition);
    GivePlayerMoney(playerid,-SUMME); }
    dann, dass cops fbi rufen
    if(gTeam[playerid] == TEAM_COP) {
    new string[256];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, name, sizeof(name));
    for(new i = 0; i <= MAX_PLAYERS; i++)
    {
    if(gTeam[i] == TEAM_FBI) {
    format(string, sizeof(string), "%s braucht unterstützung",name);
    SendClientMessage(i,farbe,string); }}}
    und cops rufen wäre dann ja fast das gleiche:


    new string[256];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, name, sizeof(name));
    for(new i = 0; i <= MAX_PLAYERS; i++)
    {
    if(gTeam[i] == TEAM_COP) {
    format(string, sizeof(string), "%s braucht hilfe",name);
    SendClientMessage(i,farbe,string); }}

    ich würd das über den score laufen lassen, das sähe dann so aus:
    public OnPlayerDeath(playerid, killerid, reason)
    {
    if(killerid==INVALID_PLAYER_ID) {
    SendDeathMessage(INVALID_PLAYER_ID,playerid,reason);
    }
    else {
    SendDeathMessage(killerid,playerid,reason);
    SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
    new name[MAX_PLAYER_NAME];
    new string[100];
    new kills = GetPlayerScore(killerid);
    GetPlayerName(killerid, name, sizeof(name));
    format(string, sizeof(string), "%s: %d", name, kills);
    GameTextForAll(string,5000,1);
    }
    return 1;
    }
    nicht getestet

    ich weiß jetzt auch nciht so genau, aber ich hätte hier mal ein ansatz, mit 0,1% wahrscheinlichkeit sogar richtig^^
    if (strcmp(cmdtext, "/job", true) == 0) {
    if(PlayerToPoint(radius,playerid,x,y,z)) {
    SendClientMessage(playerid,farbe,"Du kannst hier jobs annehmen bla bla bla..."); }
    return 1;
    }
    dann:
    if (strcmp(cmdtext, "/job den und den", true) == 0) {
    marker = SetPlayerMapIcon(playerid,iconid,x,y,z,type,farbe);
    SendClientMessage(playerid,farbe,"Du hast den Job 'gla' gewählt, fahre zum marker und tippe dann /befehl");
    return 1;
    }
    if (strcmp(cmdtext, "/befehl", true) == 0) {
    if(PlayerToPoint(radius,playerid,x vom marker,y vom marker,z vom marker)) {
    //Command er nimmt job an bla bla
    SendClientMessage(playerid,farbe,erfolgreich angenommen");
    RemovePlayerMapIcon(playerid,marker); }
    return 1;
    }
    und dann nochmal ganz nach oben:
    new marker;
    hatte da jetzt nomma geändert, da mein erstes schlecht ausgedrückt war, es gab öfters das wort "iconid", manchmal meine ich die id und manchmal den neu eingefügten xD