Beiträge von SoulMan

    Dann pack ne Abfrage rein, dass die Munition nicht unter 0 oder über 500 gehen kann.
    if(ammo < 1 || ammo > 500) return SendClientMessage(playerid,0xC8C8C8FF, "Die Munition muss zwischen 1 und 500 liegen!");
    mfG
    Walker



    //Fehler in der Abfrage korregiert.

    Ich hab's mit switch+case gemacht, etwa so:
    dcmd_invite(playerid,params[])
    {
    new pID;
    if(sscanf(params,"u",pID))return SendClientMessage(playerid,0xC8C8C8FF,"/invite [ID/Name]");
    if(!IsPlayerConnected(pID))return SendClientMessage(playerid,0xC8C8C8FF,"Dieser Spieler ist nicht online!");
    if(pInfo[pID][Fraktion] > 0)return SendClientMessage(playerid,0xC8C8C8FF,"Dieser Spieler gehört bereits einer Fraktion an!");
    if(pInfo[playerid][Leader])
    {
    new string[128], string2[128], pname[MAX_PLAYER_NAME];
    GetPlayerName(playerid,pname,sizeof(pname));
    new Team = pInfo[playerid][Fraktion];//Hier bekommt Team dann die Fraktions ID um sie bei switch zu verwenden
    switch(Team)
    {
    case 1: format(string2,sizeof(string2),"%s hat dich zum Member der Grove Street Families gemacht!",pname);
    case 2: format(string2,sizeof(string2),"%s hat dich zum Member der Jefferson 82's Ballas gemacht!",pname);
    case 3: format(string2,sizeof(string2),"%s hat dich zum Member der Los Santos Vagos gemacht!",pname);
    case 4: format(string2,sizeof(string2),"%s hat dich zum Member des LSPD gemacht!",pname);
    case 5: format(string2,sizeof(string2),"%s hat dich zum Member der Varrios Los Aztecas gemacht!",pname);
    case 6: format(string2,sizeof(string2),"%s hat dich zum Member der Triaden gemacht!",pname);
    }
    GetPlayerName(pID,pname,sizeof(pname));
    format(string,sizeof(string),"Du hast %s invitet!",pname);
    SendClientMessage(pID,0x00F0F0FF,string2);
    SendClientMessage(playerid,0xC8C8C8FF,string);
    pInfo[pID][Fraktion] = Team;
    SetPlayerHealth(pID,0);
    ForceClassSelection(pID);
    }
    else return SendClientMessage(playerid, 0xC8C8C8FF, "Du bist kein Leader!");
    return 1;
    }


    mfG
    Walker


    //[pwn] hat nicht richtig geklappt, hab's deswegen paar mal editiert.

    Ich komm doch nicht klar mit dem return X(
    Weiß nicht, wo das rein soll. Also in welcher public ich abfragen muss, ob derjenige in dem team ist,
    damit er, falls es nicht stimmt, nicht spawnt. Eig. hab ich gedacht, das kommt zu OnPlayerSpawn, aber da kamen Errors..
    mfG
    Walker


    //editiert
    //2
    Habs jetzt bei OnPlayerSpawn richtig am Ende, aber irgendwie funkt das nicht. DIe Fraktion wird jedoch beim login geladen, da
    ich als Ballas Member trotz Triadenskin in der Ballas Base spawne.


    Weiß nicht, wo ich das sonst einfügen soll..
    //3
    Hab jetzt soweit das ganze Script vom alten gTeam befreit, suche aber immernoch eine Möglichkeit, die Skins anderer Fraktionen zu sperren.
    Wäre schön, wenn mir jemand hilft. :)


    //4
    Hier nochmal meine jetzigen Zeilen!
    public OnPlayerRequestClass(playerid, classid)
    {
    SetPlayerPos(playerid,1738.9098,-1948.2825,14.1172);
    SetPlayerFacingAngle(playerid,177.2759);
    SetPlayerCameraPos(playerid,1738.9277,-1951.4822,14.1172);
    SetPlayerCameraLookAt(playerid,1738.9098,-1948.2825,14.1172);


    switch(classid)
    {
    case 0,1,2,3,4,5: GameTextForPlayer(playerid,"~g~Grove Street Families",500,3);
    case 6,7,8: GameTextForPlayer(playerid,"~p~Jefferson 82 Ballas",500,3);
    case 9,10,11: GameTextForPlayer(playerid,"~y~Los Santos Vagos",500,3);
    case 12,13,14,15,16,17,18,19: GameTextForPlayer(playerid,"~w~Cops",500,3);
    case 20,21,22: GameTextForPlayer(playerid,"~b~Varrios Los Aztecas",500,3);
    case 23,24,25,26,27: GameTextForPlayer(playerid,"~r~Triaden",500,3);
    default: GameTextForPlayer(playerid,"~w~Zivilisten",500,3);
    }
    return 1;
    }

    public OnPlayerSpawn(playerid)
    {
    clock();


    if(pInfo[playerid][Fraktion] == 4)
    {
    SetPlayerPos(playerid,1568.7911,-1691.0333,5.8906);
    }
    else if(pInfo[playerid][Fraktion] == 1)
    {
    SetPlayerPos(playerid,2496.0425,-1694.8163,1014.7422);
    SetPlayerInterior(playerid,3);
    SetPlayerVirtualWorld(playerid,39);
    SetPlayerFacingAngle(playerid,0.9302);
    }
    else if(pInfo[playerid][Fraktion] == 2)
    {
    SetPlayerPos(playerid,318.564971,1118.209960,1083.882812);
    SetPlayerInterior(playerid,5);
    SetPlayerVirtualWorld(playerid,40);
    }
    else if(pInfo[playerid][Fraktion] == 3)
    {
    SetPlayerPos(playerid,244.7236,305.0915,999.1484);
    SetPlayerInterior(playerid,1);
    SetPlayerVirtualWorld(playerid,41);
    SetPlayerFacingAngle(playerid,89.1031);
    }
    else if(pInfo[playerid][Fraktion] == 5)
    {
    SetPlayerPos(playerid,2466.2881,-1698.2965,1013.5078);
    SetPlayerInterior(playerid,2);
    SetPlayerVirtualWorld(playerid,42);
    SetPlayerFacingAngle(playerid,271.8825);
    }
    else if(pInfo[playerid][Fraktion] == 6)
    {
    SetPlayerPos(playerid,1271.7618,-781.2479,1089.9375);
    SetPlayerInterior(playerid,5);
    SetPlayerVirtualWorld(playerid,43);
    SetPlayerFacingAngle(playerid,91.5889);
    }
    else return SendClientMessage(playerid,0xC8C8C8FF,"Dieser Skin gehört einer andere Fraktion an, wähle einen Anderen!");
    return 1;
    }


    Eig. sollte jetzt dort stehen, dass man den Skin nicht wählen kann, aber es funktioniert immernoch nicht..
    Verstehe nicht warum, denn beim Spawn ist die Fraktion bereits geladen, da man ja auch am zugehörigen Ganghaus spawnt.


    //4
    Hab eine Abfrage bei OnPlayerRquestClass eingefügt und dann gemerkt, dass man sobald man return 0; bei OnPlayerRequestClass benutzt dort immer nur
    der CJ SKin erscheint. Kann mir keiner helfen? Jetzt hat es bei keiner public funktioniert.. -.-

    Hey, Com!
    Ich hab ein Problem, ich möchte mich vom guten alten gTeam verabschieden und stattdessen meine eigene
    Fraktionsvaribale nutzen, nur komm ich bei bestimmten Zeilen nicht damit zurecht.
    Ich erhalte immer Errors.
    Also hier die Zeilen, die ich ersetzen will:
    z.B.
    if(GetPlayerVehicleID(playerid) == aztecascars[i] && gTeam[playerid] != TEAM_AZTECAS)
    und
    if(gTeam[playerid] == gTeam[i])
    und
    if(gTeam[i] == TEAM_COPS)
    All dies möchte ich mit:
    if(pInfo[playerid][Fraktion] == 4)
    ersetzen.
    Hab's schon mehrere Male probiert, ohne Erfolg, bitt helft mir..
    mfG
    Walker


    //Problem gelöst, daher /close.
    mfG
    Walker

    Hey, ihr Scripter!
    Ich hab ein Problem, ich möchte bei der Skinauswahl abfragen, zu welchem Team playerid gehört und dann
    dementprechend den Spawn zulassen oder verhindern.
    Also playerid ist im gTeam Ballas und versucht beispielsweise als Zivilist oder Grove zu spawnen, aber dies wird verhindert, da playerid nicht
    zu diesem gTeam gehört.
    Hab schon ne Menge versucht, wollte aber nicht klappen.
    Hier mal meine Zeilen:
    enum Info
    {
    AdminLevel,
    Leader,
    Fraktion,
    sex,
    age,
    logged,
    }
    public OnPlayerRequestClass(playerid, classid)
    {
    SetPlayerPos(playerid,1738.9098,-1948.2825,14.1172);
    SetPlayerFacingAngle(playerid,177.2759);
    SetPlayerCameraPos(playerid,1738.9277,-1951.4822,14.1172);
    SetPlayerCameraLookAt(playerid,1738.9098,-1948.2825,14.1172);


    switch(classid)
    {
    case 0,1,2,3,4,5: gTeam[playerid] = TEAM_GROVE, GameTextForPlayer(playerid,"~g~Grove Street Families",500,3);
    case 6,7,8: gTeam[playerid] = TEAM_BALLAS, GameTextForPlayer(playerid,"~p~Jefferson 82 Ballas",500,3);
    case 9,10,11: gTeam[playerid] = TEAM_VAGOS, GameTextForPlayer(playerid,"~y~Los Santos Vagos",500,3);
    case 12,13,14,15,16,17,18,19: gTeam[playerid] = TEAM_COPS, GameTextForPlayer(playerid,"~w~Cops",500,3);
    case 20,21,22: gTeam[playerid] = TEAM_AZTECAS, GameTextForPlayer(playerid,"~b~Varrios Los Aztecas",500,3);
    case 23,24,25,26,27: gTeam[playerid] = TEAM_TRIADEN, GameTextForPlayer(playerid,"~r~Triaden",500,3);
    default: gTeam[playerid] = TEAM_ZIVILISTEN, GameTextForPlayer(playerid,"~w~Zivilisten",500,3);
    }
    return 1;
    }
    public OnPlayerSpawn(playerid)
    {
    clock();


    if(gTeam[playerid] == TEAM_COPS)
    {
    SetPlayerPos(playerid,1568.7911,-1691.0333,5.8906);
    }
    else if(gTeam[playerid] == TEAM_GROVE )
    {
    SetPlayerPos(playerid,2496.0425,-1694.8163,1014.7422);
    SetPlayerInterior(playerid,3);
    SetPlayerVirtualWorld(playerid,39);
    SetPlayerFacingAngle(playerid,0.9302);
    }
    else if(gTeam[playerid] == TEAM_BALLAS )
    {
    SetPlayerPos(playerid,318.564971,1118.209960,1083.882812);
    SetPlayerInterior(playerid,5);
    SetPlayerVirtualWorld(playerid,40);
    }
    else if(gTeam[playerid] == TEAM_VAGOS )
    {
    SetPlayerPos(playerid,244.7236,305.0915,999.1484);
    SetPlayerInterior(playerid,1);
    SetPlayerVirtualWorld(playerid,41);
    SetPlayerFacingAngle(playerid,89.1031);
    }
    else if(gTeam[playerid] == TEAM_AZTECAS)
    {
    SetPlayerPos(playerid,2466.2881,-1698.2965,1013.5078);
    SetPlayerInterior(playerid,2);
    SetPlayerVirtualWorld(playerid,42);
    SetPlayerFacingAngle(playerid,271.8825);
    }
    else if(gTeam[playerid] == TEAM_TRIADEN)
    {
    SetPlayerPos(playerid,1271.7618,-781.2479,1089.9375);
    SetPlayerInterior(playerid,5);
    SetPlayerVirtualWorld(playerid,43);
    SetPlayerFacingAngle(playerid,91.5889);
    }
    return 1;
    }
    Hab jetzt mal die betroffenen Zeilen gepostet, jedenfalls denke ich das. :D
    Wäre schön, wenn mir einer einen Tipp geben kann.
    Hab alles mögliche versucht, Fraktion mit dini_Int vorher geladen und alle AddPlayerClass Zeilen bei OnPlayerRequestClass eingefügt und vorher das
    geladene gTeam [dini_Int] abgefragt etc.
    Wollte alles nicht funktionieren.
    Die Skinauswal war dann einfach verbuggt..vielleicht ist hier ja ein erfahrener Scripter, der helfen kann.
    mfG
    Walker

    Das sind meiner Meinung nach ganz einfach Klammerfehler.
    Das kann in jedem Script passieren. Zähl am besten nochmal, wieviel geöffnete und geschlossene Klammern du hast. ;)
    Mir hilft das immer.
    mfG
    Walker

    CMD:su(playerid,params[])
    {
    new Ziel,Grund;
    if(IsPlayerConnected(Ziel))
    {
    if(!sscanf(params,"us[10]",Ziel,Grund))
    {
    if(IstEinCop(playerid))
    {
    if(IstImDienst[playerid]==1)
    {
    if(!IstEinCop(Ziel))
    {
    new Wantedsterne=GetPlayerWantedLevel(playerid);
    new string[128];
    new PlayeridName[MAX_PLAYER_NAME],ZielName[MAX_PLAYER_NAME];
    SetPlayerWantedLevel(Ziel,Wantedsterne+1);
    GetPlayerName(playerid,ZielName,sizeof(ZielName));
    GetPlayerName(Ziel,PlayeridName,sizeof(PlayeridName));
    format(string,sizeof(string),"%s hat dir einen Wantedstern gegeben. Grund: %s",PlayeridName,Grund);
    SendClientMessage(Ziel,HELLBLAU,string);
    format(string,sizeof(string),"Du hast %s einen Wantedstern gegeben. Grund: %s",ZielName,Grund);
    SendClientMessage(playerid,HELLBLAU, string);
    format(string,sizeof(string),"Aktuelles Wantedlevel: %d",SpielerInfo[Ziel][Wantedlevel]);
    SendClientMessage(Ziel,GELB,string);
    return 1;
    }
    else return SendClientMessage(playerid,ROT,"Dieser Spiel ist ein Beamter!");
    }
    else return SendClientMessage(playerid,ROT,"Du bist nicht im Dienst!");
    }
    else return SendClientMessage(playerid,ROT,"Du bist kein Beamter im Dienst!");
    }
    else return SendClientMessage(playerid,GRAU,"Benutze: /su(spect) [Spielername/ID] [Grund]");
    }
    else return SendClientMessage(playerid,ROT,"Der Spieler ist nicht online!");
    }


    Dem Ziel musst du dein Namen [PlayeridName] ausgeben und dir selbst den Namen des Ziels [ZielName]
    Man kann es aber auch mit nur einer Variable machen, wenn die andere vorher genutzt wurde.
    mfG

    Vielleicht hast du's ja schon Versucht, aber evtl. mal
    auf einen der SWAT's mit dem Cursor zeigen, um die ModelID zu sehen bzw. Doppeklick, um einen auszuwählen.
    mfG
    Walker


    Edit:
    Schwachsinn, hast ja die Liste schon durchsucht.
    Sorry!

    Mein Freund sagte das Tor dort geht nicht auf , aber sonst nicht schlecht 5/10


    Was für ein Tor?
    Ich habe dort nichts gemapptes drin!


    OMG Made my Day xD
    Ich gucke es mir gleich mal an.
    mfG
    Walker


    Edit:
    Ist ganz ordentlich, hier und da ein paar Rechtschreibfehler, ansonsten recht schön gemacht.
    Man hätte noch eine Auswahl für die Munition einbauen können, aber das ist Nebensache.
    mfG
    Walker