Beiträge von KeksOfDeath

    dcmd_autospawn(playerid,params[]) {
    if(!strlen(params)) return SendClientMessage(playerid,FARBE,"/autospawn FahrzeugID oder Fahrzeugname");
    new autonamen[][]= {
    "Landstalker", "Bravura", "Buffalo", "Linerunner", "Perenniel", "Sentinel", "Dumper", "Feuertruck 1",
    "Müllauto", "Stretch", "Manana", "Infernus", "Voodoo", "Pony", "Mule", "Cheetah", "Krankenwagen",
    "Leviathan", "Moonbeam", "Esperanto", "Taxi", "Washington", "Bobcat", "Eiswagen", "BF Injection",
    "Hunter", "Premier", "Enforcer", "Sicherheitsauto", "Banshee", "Predator", "Bus", "Rhino", "Barracks",
    "Hotknife", "Article Trailer", "Previon", "Coach", "Cabbie", "Stallion", "Rumpo", "RC Bandit",
    "Romero", "Packer", "Monster Truck", "Admiral", "Squallo", "Seasparrow", "Pizzaboy", "Tram",
    "Article Trailer 2", "Turismo", "Speeder", "Reefer", "Tropic", "Flatbad", "Yankee", "Caddy", "Soliar",
    "Berkley's RC Van", "Skimmer", "PCJ-600", "Faggio", "Freeway", "RC Baron", "RC Raider", "Glendale",
    "Oceanic", "Sanchez", "Sparrow", "Patriot", "Quad", "Kuestenwache", "Dinghy", "Hermes", "Sabre",
    "Rustler", "ZR-350", "Walton", "Regina", "Comet", "BMX", "Burrito", "Camper", "Marquis", "Baggage",
    "Dozer", "Maverick", "SAN News Maverick", "Rancher", "FBI Rancher", "Virgo", "Greenwood", "Jetmax",
    "Hotring Racer 1", "Sandking", "Balista Compact", "Polizei Maverick", "Boxville", "Benson", "Mesa",
    "RC Goblin", "Hotring Racer 2", "Hotring Racer 3", "Bloodring Banger", "Rancher", "Super GT", "Elegant",
    "Journey", "Fahrrad", "Mountain Bike", "Beagle", "Cropduster", "Stuntflugzeug", "Benzin Tanker",
    "Roadtrain", "Nebula", "Majestic", "Buccaneer", "Shamal", "Hydra", "FCR-900", "NRG-500", "HPV-1000",
    "Zement Truck", "Abschlepper", "Fortune", "Cadrona", "FBI Truck", "Willard", "Gabelstabler",
    "Traktor", "Maehdrescher", "Feltzer", "Remington", "Slamvan", "Blade", "Brownstreak", "Freight",
    "Vortex", "Vincent", "Bullet", "Clover", "Sadler", "Feuertruck 2", "Hustler", "Intruder", "Primo",
    "Cargobob", "Tampa", "Sunrise", "Merit", "Utility Van", "Nevada", "Yosemite", "Windsor",
    "Monster Truck", "Monster Truck", "Uranus", "Jester", "Sultan", "Stratum", "Elegy", "Raindance",
    "RC Tiger", "Flash", "Tahoma", "Savanna", "Bandito", "Freight Flat Trailer", "Streak Trailer",
    "Kart", "Mower", "Dune", "Sweeper", "Broadway", "Tornado", "AT400", "DFT-30", "Huntley", "Stafford",
    "BF-400", "Nachrichten Van", "Tug", "Benzin Anhaenger", "Emperor", "Wayfarer", "Euros", "Hotdog",
    "Club", "Freight Box Trailer", "Article Trailer 3", "Andromada", "Dodo", "RC Cam", "Launch",
    "Polizeiauto LSPD", "Polizeiauto SFPD", "Polizeiauto LVPD", "Ranger", "Picador", "Wasserwerfer",
    "Alpha", "Phoenix", "Glendale Shit", "Sadler Shit", "Baggage Trailer 1", "Baggage Trailer 2",
    "Tug Stairs Trailer", "Boxburg", "Farm Trailer", "Utility Trailer" }, id, geht;
    for(new i, j=strlen(params); i<j; i++) {
    if((params[i]<0 || params[i]>9) && params[i]!=' ') {
    geht++;
    i=j; }}
    if(!geht) {
    id=strval(params); }
    else {
    for(new m=0; m<211; m++) {
    if(strfind(autonamen[m],params,true)==0) {
    id=m+400; }}}
    if(id>=400 && id<=611) {
    new Float:x, Float:y, Float:z, gla, Float:za, s[50];
    format(s,sizeof(s),"Du hast eine/n %s gespawnt",autonamen[id-400]);
    SendClientMessage(playerid,FARBE,s);
    GetPlayerPos(playerid,x,y,z); GetPlayerFacingAngle(playerid,za);
    gla=CreateVehicle(id,x+2,y,z,za,random(127),random(127),-1);
    LinkVehicleToInterior(gla,GetPlayerInterior(playerid)); }
    else { SendClientMessage(playerid,rot,"Inkorrekte Fahrzeug ID"); }
    return 1;
    }

    if(strcmp(cmdtext,"/back",true)==0) {
    new name[MAX_PLAYER_NAME], s[50];
    GetPlayerName(playerid,name,sizeof(name));
    format(s,sizeof(s),"%s ist vom AFK zurück",name);
    SendClientMessageToAll(FARBE,s);
    TogglePlayerControllable(playerid,1);
    return 1;
    }

    Ich würds aber immernoch anders machen, so würde auch nur die ID 0 gekickt werden (sofern sie online ist)
    for(new i =0; i < MAX_PLAYERS;i++)
    {
    if(IsPlayerConnected(i)) {
    Kick(i); }
    }

    public payday()//beim forward auch das playerid entfernen
    {
    for(new i; i<MAX_PLAYERS; i++) {
    if(IsPlayerConnected(i)) {
    GivePlayerMoney(i,10000);
    SetPlayerScore(i,GetPlayerScore(i)+1);
    GameTextForPlayer(i,"ZAHLTAG",5000,3);
    }}
    return 1;
    }

    Das einzige, was mir jetzt noch einfallen würde, wäre es so zu machen:
    new save[128], i, st, ziel;
    save=strget(cmdtext,1);
    //oder:
    format(save,sizeof(save),"%s",strget(cmdtext,1));
    Es dürfte zwar eigentlich nichts ändern, aber ein Versuch ist es wert

    Hatte eine ")" zu viel in Zeile 1341
    new save[128]=strget(cmdtext,1), i, st, ziel;
    Aber in 1340 ist eigentlich nichts falsch, zumindest sehe ich keinen Fehler


    PS: Und du hast "save" bereits deklariert, irgendwo anders (vllt am Anfang des publics? oder global?)

    Einfach nur strget angewendet^^
    strget(text,nummer des leerzeichens)
    Bei dem Text "Seife schmeckt nicht", würde in "strget(text,0)" nur "Seife" drinne stehen, bei "strget(text,1)" würde "schmeckt" drinne stehen
    Wenn ich jetzt den Text "/makeleader 1 1" habe, dann steht bei "strget(text,1)" eine "1" drinne und ich kann sie per strval auslesen (in ein Integer umwandeln)


    PS: Wäre nett, wenn du die Errorzeilen mal markierst

    if(!strcmp(strget(cmdtext,0),"/makeleader"))
    {
    if(pInfo[playerid][alevel] == 5)
    {
    if(!strlen(strget(cmdtext,2))) return SendClientMessage(playerid,FARBE,"/makeleader [ID/NAME] [TEAMID]");
    new save[128]=strget(cmdtext,1)), i, st, ziel;
    for(st=strlen(save); i<st; i++) {
    if((save[i]<0 ||save[i]>9) && save[i]!=' ') {
    ziel++;
    i=st; }}
    if(ziel) {
    new name[MAX_PLYER_NAME];
    for(i=0; i<MX_PLAYERS; i++) {
    if(IsPlayerConnected(i)) {
    GetPlayerName(i,name,sizeof(name));
    if(strfind(name,save,true)==0) {
    ziel=i; }}}}
    else { ziel=strval(save); }
    if(IsPlayerConnected(ziel))
    {
    new teamid = strval(strget(cmdtext,2));
    if(teamid>=0 && teamid<=10) {
    GetPlayerName(ziel,save,sizeof(save));
    format(save,sizeof(save),"%s.ini",save);//ich weiß ja nicht, ob die accoun ts bei dir in nem speziellen ordner sind und ob du überhaupt ini verwendest, musst also vllt ändern
    gLeader[ziel] = teamid;
    if(teamid==0) { SetPlayerSkin(ziel,101);}
    if(teamid==1) { dini_IntSet(save,"COP",1);SetPlayerSkin(ziel,281);}
    if(teamid==2) { dini_IntSet(save,"FBI",1);SetPlayerSkin(ziel,286);}
    if(teamid==3) { dini_IntSet(save,"ARMY",1);SetPlayerSkin(ziel,287);}
    if(teamid==4) { dini_IntSet(save,"SANNEWS",1);SetPlayerSkin(ziel,227);}
    if(teamid==5) { dini_IntSet(save,"TAXI",1);SetPlayerSkin(ziel,185);}
    if(teamid==6) { dini_IntSet(save,"YAKUZA",1);SetPlayerSkin(ziel,120);}
    if(teamid==7) { dini_IntSet(save,"LCN",1);SetPlayerSkin(ziel,113);}
    if(teamid==8) { dini_IntSet(save,"HITMAN",1);SetPlayerSkin(ziel,124);}
    if(teamid==9) { dini_IntSet(save,"STADTREINIGUNG",1);SetPlayerSkin(ziel,158);}
    if(teamid==10) { dini_IntSet(save,"FAHRLEHRER",1);SetPlayerSkin(ziel,17);}
    SendClientMessage(ziel,dunkelblau,"Herzlichen Glückwunsch, du bist nun Mitglied einer Fraktion!");
    }
    else { SendClientMessage(playerid,FARBE,"Teamid muss zwischen 0 und 10 sein"); }}
    else { SendClientMessage(playerid,FARBE,"ID nicht vergeben"); }}
    else
    {
    SendClientMessage(ziel,dunkelblau,"Du bist kein Administrator Level [5]!");
    }
    return 1;
    }

    Der Error kann eig nicht kommen, du musst es genau so einfügen in OnGameModeInit:
    DisableInteriorEnterExits();
    Und das mit nem Punkt und buygun, dafür müsste ich wissen, wie du Parameter ausliest, sonst bau ich dir da i-nen Code und der ist nicht kompatibel mit deim Script, aber egal, ich versuchs einfach mal auf gut Glück:
    //OnPlayerCommandText:
    dcmd(buygun,6,cmdtext);
    //außerhalb eines callbacks:
    dcmd_buygun(playerid,params[]) {
    if(!strlen(strget(params,1))) return SendClientMessage(playerid,FARBE,"/buygun Waffe Munition");
    new wid, geht, i, s[128]=strget(params,0)), st=strlen(s), waffennamen[][]= {
    "Schlagring", "Golfschläger", "Schlagstock", "Messer", "Baseball Schläger", "Schaufel",
    "Billiard Schläger", "Katana", "Kettensäge", "Dildo", "Dildo", "Dildo", "Dildo", "Blumen",
    "Stock", "Granate", "Rauchgranate", "Molotov Cocktail", " ", " ", " ", "9mm", "Schallgedämpfte 9mm",
    "Deagle", "Schrotflinte", "Abgesägte Schrotflinte", "SPAZ-12", "Mac10", "Mp5", "Ak47", "M4", "Tec9",
    "Gewehr", "Sniper", "Raketenwerfer", "Skorpion", "Flammenwerfer", "Minigun", "Rucksackbombe",
    "Zünder", "Pfefferspray", "Feuerlöscher", "Kamera", "Nachtsichtgerät", "Infrarotbrille",
    "Fallschirm" };
    for(; i<st; i++) {
    if((params[i]<0 || params[i]>9) && params[i]!=' ') {
    geht=1; }}
    if(geht) {
    for(i=0, st=sizeof(waffennamen); i<st; i++) {
    if(strfind(s,waffennamen[i],true)==0) {
    wid=i+1; }}}
    else { wid=strval(s); }
    st=strval(strget(params,1));
    if(st>=1 && st<=10000) {
    GivePlayerWeapon(playerid,wid,st); }
    return 1;
    }

    Zu dem mit den Kegeln:
    //OnGameModeINit:
    DisableInteriorEnterExists();
    Das mit dem "/buy"
    Dafür müsste man jetzt wissen wie du Parameter ausliest (dcmd, strtok, strget, sscanf)

    Sorry, die Teams brauchte ich doch nciht, war ein Denkfehler, egal
    //ganz nach oben:
    #define alleteams 14
    forward gewinncheck();
    new gewt, imdm[alleteams];
    //Wenn alle da rein geportet werden:
    gewt=SetTimer("gewinncheck",2000,1);
    und du musst natürlich die Variable (imdm) für jeden Spieler, der im Team ist um 1 erhöhen, Beispiel:
    gewt=SetTimer("gewinncheck",2000,1);
    for(new i; i<MAX_PLAYERS; i++) {
    imdm[gTeam[i]]++; }//falls du gTeam verwendest
    //ganz nachn unten:
    public gewinncheck() {
    new x, i;
    for(; i<alleteams; i++) {
    if(imdm[i]>=1) {
    x++; }}
    if(x) {
    for(i=0; i<alleteams; i++) {
    if(imdm[i]>=1) {
    new s[100];
    format(s,sizeof(s),"Das Team %d hat gewonnen",i);
    SendClientMessageToAll(FARBE,s);
    imdm[i]=0;
    x=i;
    i=alleteams; }}
    for(i=0; i<MAX_PLAYERS; i++) {
    if(IsPlayerConnected(i)) {
    if(gTeam[i]==x) {//sofern du gTeam verwendest^^
    GivePlayerMoney(i,SUMME); }}}
    KillTimer(gewt); }
    PS: Funktioniert nur, wenn du deine 14 Teams von 0 bis 13 durchnummeriert hast, sollte es von 1 bis 14 sein, musst du "alleteams" als 15 deklarieren und dort, wo du die "imdm" Varaible hochrechnest überprüfewn, dass sie nciht das Team 0 haben
    Sollte es anders nummeriert sein (1,5,8,59,...) dann funzt es nicht