Beiträge von CaptainKevin

    public OnPlayerDeath(playerid,killerid,reason)
    {
    SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
    SetPVarInt(playerid,"Level",GetPVarInt(playerid,"Level")+1);
    SpielerSpeichern(playerid);
    return 1;
    }


    /e: Mit Dini Speicherung hinzugefügt :)

    ocmd:givemoneyall(playerid,params[])
    {
    new anzahl;
    if(adminabfrage)return SendClientMessage(playerid,Rot,"Kein Admin");
    if(sscanf(params,"d",anzahl))return SendClientMessage(playerid,Gelb,"Verwendung: /givemoneyall anzahl");
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    GivePlayerMoney(playerid,anzahl);
    }
    }
    return 1;
    }

    if(newstate==PLAYER_STATE_DRIVER)
    {
    for(new i=0; i<sizeof yakuzacar; i++)//anpassen
    {
    if(GetPlayerVehicleID(playerid)==yakuzacar[i])//anpassen
    {
    if(GetPVarInt(playerid,"Fraktion")!=4)//fraktion anpassen
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,Rot,"Du hast keine Schlüssel für dieses Fahrzeug.");
    }
    }
    }
    }

    Pass dir das mal an

    Deshalb hab ich ja dazu geschrieben: MIT ERKLÄRUNG
    Wer lesen kann ist klar im Vorteil.


    B2T: Hier im Forum gibt es ein Tutorial für ein Dynamischen FraktionsCar System.
    Ich blick da aber nicht durch :D

    Dr.Scripter, wenn ich bei dir auch per SMS bezahlen kann,
    dann möchte, dass du mir mal erklärst, wie du das gescriptet hat.
    Mit Autohaussystem. Ich bin zu doof lol :O

    Dann beantwortet mir eins: Warum ging es gestern und heute noch?
    Ich benutze den Code seit Monaten. Immer nur so. Nie war was falsch.
    Und dein Code ist auch falsch eingerückt :D

    Wie im Titel oben schon beschrieben, habe ich ein Problem mit SSCANF.
    Ich habe diesen Befehl hier:
    ocmd:spawn(playerid,params[])
    {
    if(!isAdmin(playerid,1))return SendClientMessage(playerid,Rot,Aerror);
    new pID, string[128], alevel[128];
    if(sscanf(params,"u",pID))return SendClientMessage(playerid,Gelb,"Verwendung: /spawn [Playerid]");
    if(!IsPlayerConnected(pID))return SendClientMessage(playerid,Rot,Oerror);
    switch(GetPVarInt(playerid,"Adminlevel"))
    {
    case 1:{alevel="Supporter";}
    case 2:{alevel="Moderator";}
    case 3:{alevel="Administrator";}
    case 4:{alevel="Super Admin";}
    case 5:{alevel="Manager";}
    case 6:{alevel="Leiter";}
    }
    format(string,128,"%s %s hat den Spieler %s gespawnt.",alevel,GetName(playerid),GetName(pID));
    SendClientMessageToAll(Rot,string);
    SpawnPlayer(pID);
    return 1;
    }

    Und den SScanf code:
    stock sscanf(string[],format[],{Float,_}:...){if(string[0]==0||(string[0]==1&&string[1]==0)){return format[0];}new formatPos=0,stringPos=0,paramPos=2,paramCount=numargs(),delim=' ';while(string[stringPos]&&string[stringPos]<=' '){stringPos++;}while(paramPos<paramCount&&string[stringPos]){switch(format[formatPos++]){case'\0':{return 0;}case'i','d':{new neg=1,num=0,ch=string[stringPos];if(ch=='-'){neg=-1;ch=string[++stringPos];}do{stringPos++;if('0'<=ch<='9'){num=(num * 10) + (ch - '0');}else{return -1;}}
    while((ch=string[stringPos])>' '&&ch!=delim);setarg(paramPos,0,num * neg);}case'h','x':{new num=0,ch=string[stringPos];do{stringPos++;switch(ch){case'x','X':{num=0;continue;}case'0' .. '9':{num=(num << 4) | (ch - '0');}case'a' .. 'f':{num=(num << 4) | (ch - ('a' - 10));}case'A' .. 'F':{num=(num << 4) | (ch - ('A' - 10));}default:{return -1;}}}while((ch=string[stringPos])>' '&&ch!=delim);setarg(paramPos,0,num);}case'c':{setarg(paramPos,0,string[stringPos++]);}
    case'f':{new changestr[16],changepos=0,strpos=stringPos;while(changepos<16&&string[strpos]&&string[strpos]!=delim){changestr[changepos++]=string[strpos++];}changestr[changepos]='\0';setarg(paramPos,0,_:floatstr(changestr));}case'p':{delim=format[formatPos++];continue;}case'\'':{new end=formatPos - 1,ch;while((ch=format[++end])&&ch!='\'') {}if(!ch){return -1;}format[end]='\0';if((ch=strfind(string,format[formatPos],false,stringPos))==-1){if(format[end + 1]){
    return -1;}return 0;}format[end]='\'';stringPos=ch + (end - formatPos);formatPos=end + 1;}case'u':{new end=stringPos - 1,id=0,bool:num=true,ch;while((ch=string[++end])&&ch!=delim){if(num){if('0'<=ch<='9'){id=(id*10)+(ch-'0');}else{num=false;}}}if(num&&IsPlayerConnected(id)){setarg(paramPos,0,id);}else{
    #if!defined foreach
    #define foreach(%1,%2) for (new %2=0; %2<MAX_PLAYERS; %2++) if(IsPlayerConnected(%2))
    #define __SSCANF_FOREACH__
    #endif
    string[end]='\0';num=false;new name[MAX_PLAYER_NAME];id=end - stringPos;foreach (Player,playerid){GetPlayerName(playerid,name,sizeof (name));if(!strcmp(name,string[stringPos],true,id)){setarg(paramPos,0,playerid);num=true;break;}}if(!num){setarg(paramPos,0,INVALID_PLAYER_ID);}string[end]=ch;
    #if defined __SSCANF_FOREACH__
    #endif
    }stringPos=end;}case's','z':{new i=0,ch;if(format[formatPos]){while((ch=string[stringPos++])&&ch!=delim){setarg(paramPos,i++,ch);}if(!i){return -1;}}else{while((ch=string[stringPos++])){setarg(paramPos,i++,ch);}}stringPos--;setarg(paramPos,i,'\0');}default:{continue;}}while(string[stringPos]&&string[stringPos]!=delim&&string[stringPos]>' '){stringPos++;}while(string[stringPos]&&(string[stringPos]==delim||string[stringPos]<=' ')){stringPos++;}paramPos++;}do
    {if((delim=format[formatPos++])>' '){if(delim=='\''){while((delim=format[formatPos++])&&delim!='\'') {}}else if(delim!='z'){return delim;}}}while(delim>' ');return 0;}

    Wenn ich compilen will kommt das:
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(687) : warning 217: loose indentation
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(687) : warning 217: loose indentation
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(687) : warning 217: loose indentation
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(688) : warning 217: loose indentation
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(688) : warning 217: loose indentation
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(689) : warning 217: loose indentation
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(689) : warning 217: loose indentation
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(690) : warning 217: loose indentation
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(690) : warning 217: loose indentation
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(690) : warning 217: loose indentation
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(695) : warning 217: loose indentation
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(695) : warning 217: loose indentation
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(698) : warning 217: loose indentation
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(698) : warning 217: loose indentation
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(698) : warning 217: loose indentation
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(698) : warning 217: loose indentation
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(698) : warning 217: loose indentation
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(698) : warning 217: loose indentation
    C:\Users\Smith Fmily\Desktop\0.3eR2 - MySQL\gamemodes\WOGD.pwn(699) : warning 217: loose indentation
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    19 Warnings.



    Warum? Info: Aerror und Oerror sind Texte, die ich oben definiert habe. Wenn ich sie rausnehme, kommt immer noch das selbe.

    LoL? Alles falsch....
    if(strcmp("/enter", cmdtext, true) == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid,2,1555.4998,-1675.5679,16.1953))
    {
    SetPlayerPos(playerid,288.9064,171.3878,1007.1794);
    SetPlayerInterior(playerid,3);
    return 1;
    }
    return 1;
    }

    Hey, du benutzt dort den Befehl aus meinem Tutorial, finde ich toll :)
    Ich mach dir den Befehl und erkläre dir den.

    ocmd:delall(playerid,params[])
    {
    if(isPlayerAnAdmin(playerid,4))
    {
    for(new i=0; i<MAX_VEHICLES; i++)
    {
    DestroyVehicle(i);
    }
    }
    return 1;
    }

    Als 1. brauchst du eine Schleife, dir durch alle Fahrzeuge geht.
    Dannach musst du sie ja nur löschen :)


    ocmd:a(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,Rot,"Du bist kein Admin.");
    new text[400];
    if(sscanf(params,"s",text))return SendClientMessage(playerid,Grau,"Benutzung: /a [Text]");
    new string[128];
    if(GetPVarInt(playerid,"Adminlevel")==1) {format(string,sizeof(string),"**(AdminChat) Test - Supporter %s: %s.**", SpielerName(playerid),text);}
    else if(GetPVarInt(playerid,"Adminlevel")==2) {format(string,sizeof(string),"**(AdminChat) Supporter %s: %s.**",SpielerName(playerid),text);}
    else if(GetPVarInt(playerid,"Adminlevel")==3) {format(string,sizeof(string),"**(AdminChat) Full - Supporter %s: %s.**",SpielerName(playerid),text);}
    else if(GetPVarInt(playerid,"Adminlevel")==4) {format(string,sizeof(string),"**(AdminChat) Moderator %s: %s.**",SpielerName(playerid),text);}
    else if(GetPVarInt(playerid,"Adminlevel")==5) {format(string,sizeof(string),"**(AdminChat) Test - Admin %s: %s.**",SpielerName(playerid),text);}
    else if(GetPVarInt(playerid,"Adminlevel")==6) {format(string,sizeof(string),"**(AdminChat) Admin %s: %s.**",SpielerName(playerid),text);}
    else if(GetPVarInt(playerid,"Adminlevel")==7) {format(string,sizeof(string),"**(AdminChat) Mapper %s: %s.**",SpielerName(playerid),text);}
    else if(GetPVarInt(playerid,"Adminlevel")==8) {format(string,sizeof(string),"**(AdminChat) Scripter %s: %s.**",SpielerName(playerid),text);}
    else if(GetPVarInt(playerid,"Adminlevel")==9) {format(string,sizeof(string),"**(AdminChat) Co - Projektleiter %s: %s.**",SpielerName(playerid),text);}
    else if(GetPVarInt(playerid,"Adminlevel")==10) {format(string,sizeof(string),"**(AdminChat) Projektleiter %s: %s.**",SpielerName(playerid),text);}
    print("-----");
    print(string);
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(isPlayerAnAdmin(i,GetPVarInt(playerid,"Adminlevel")))
    {
    SendClientMessage(i,Gelb,string);
    }
    }
    }
    return 1;
    }