Beiträge von Marksman

    Moin Leute,


    hier mein pawn Code:


    if(newstate==PLAYER_STATE_DRIVER)
    {
    for(new i=0; i<sizeof(grovecarrang4); i++)
    {
    if(GetPlayerVehicleID(playerid)==grovecarrang4[i])
    {
    if(GetPVarInt(playerid,"Fraktion")!=2)return 0;
    if(GetPVarInt(playerid,"Fraklevel")!=4)
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,Rot,"Du bist nicht Rang 4!");
    }
    }
    }
    }


    Im moment können die Rang 4er nur die Karre fahren, ich möchte aber das die 5er die auchnoch fahren können mit "<" hab ich es schon versucht, klappt nicht.


    if(GetPVarInt(playerid,"Fraklevel")!=4)
    Ich denke hier muss ich was ändern.


    Irgendeiner n' tipp?

    Ahhh okay, danke für die schnelle Antwort :)


    Ich habs jetzt:


    ocmd:giverank(playerid,params[])
    {
    if(!hasplayerafraklevel(playerid,5)) return SendClientMessage(playerid,Rot,"Du bist kein Leader!");
    new pID,level,string[128];
    if(sscanf(params,"ui",pID,level))return SendClientMessage(playerid,hellblau,"/giverank [spieler] [level]");
    if(!GetPVarInt(pID,"Fraktion"))return SendClientMessage(playerid,Rot,"Der Spieler ist nicht in deiner Fraktion");
    SetPVarInt(pID,"Fraklevel",level);
    SpielerSpeichern(pID);
    format(string,sizeof(string),"%s hat jetzt den Rank %d",SpielerName(pID),level);
    SendClientMessage(pID,Rot,string);
    return 1;
    }

    Moin Jungs,


    Ich bin gerade dabei die Ränge der Fraktionen zu erstellen und jetzt hab ich ein Problem.
    Wenn man Leader ist kann man im Moment die Ränge jeder Member in jeder Fraktion ändern.


    hier mein cmd


    ocmd:giverank(playerid,params[])
    {
    if(!hasplayerafraklevel(playerid,5)) return SendClientMessage(playerid,Rot,"Du bist kein Leader!");
    new pID,level,string[128],fraktid;
    if(sscanf(params,"ui",pID,level))return SendClientMessage(playerid,hellblau,"/giverank [spieler] [level]");
    if(!isPlayerInFrakt(pID,fraktid))return SendClientMessage(playerid,Rot,"Der Spieler ist nicht deiner Fraktion!");
    SetPVarInt(pID,"Fraklevel",level);
    SpielerSpeichern(pID);
    format(string,sizeof(string),"%s hat jetzt den Rank %d",SpielerName(pID),level);
    SendClientMessage(pID,Rot,string);
    return 1;
    }



    Ich denke ich muss hier irgendwas ändern:
    if(!isPlayerInFrakt(pID,fraktid))return SendClientMessage(playerid,Rot,"Der Spieler ist nicht deiner Fraktion!");



    MfG


    Marksman

    ocmd:givegun(playerid,params[])
    {
    new pID,weapon,ammo,gunname;
    if(sscanf(params,"uii",pID,gunname,ammo))
    {
    return SendClientMessage(playerid,hellblau,"Benutze: /givegun[SpielerID][Waffe][Munition]");
    }
    if(!IsPlayerConnected(pID)){
    return SendClientMessage(playerid,Rot,"Der Spieler ist nicht online!");
    }
    new string[128],string2[128],aname[MAX_PLAYER_NAME],name[MAX_PLAYER_NAME];
    GivePlayerWeapon(pID,weapon,ammo);
    GetPlayerName(playerid,aname,sizeof(aname));
    GetPlayerName(pID,name,sizeof(name));
    GetWeaponName(gunname,string2,sizeof(string2));
    format(string,sizeof(string),"Du hast %s eine %s und mit %d Schuss gegeben!",name,string2,ammo);
    format(string2,sizeof(string2),"%s hat dir eine %s mit %d Schuss gegeben",aname,string2,ammo);
    SendClientMessage(playerid,Gruen,string);
    SendClientMessage(pID,grau,string2);
    return 1;
    }


    Jetzt zeigt er mir den Name an aber er gibt mir keine Waffe mehr xDD


    //edit:cmd verändert
    //edit2: satz hinzugefügt

    Wie peinlich ;(:D


    jetzt sieht es so aus.
    Was muss ich jetzt noch machen damit er mir den Name dort ausgibt?
    Im Moment lässt er das Feld einfach leer.



    ocmd:givegun(playerid,params[])
    {
    new pID,weapon,ammo,gunname;
    if(sscanf(params,"uii",pID,gunname,ammo)){
    return SendClientMessage(playerid,hellblau,"Benutze: /givegun[SpielerID][Waffe][Munition]");
    }
    if(!IsPlayerConnected(pID)){
    return SendClientMessage(playerid,Rot,"Der Spieler ist nicht online!");
    }
    new string[128],string2[128],aname[MAX_PLAYER_NAME],name[MAX_PLAYER_NAME];
    GivePlayerWeapon(pID,weapon,ammo);
    GetPlayerName(playerid,aname,sizeof(aname));
    GetPlayerName(pID,name,sizeof(name));
    GetWeaponName(gunname,string2,sizeof(string2));
    format(string,sizeof(string),"Du hast %s eine %s und mit %d Schuss gegeben!",name,gunname,ammo);
    format(string2,sizeof(string2),"%s hat dir eine %s mit %d Schuss gegeben",aname,gunname,ammo);
    SendClientMessage(playerid,Gruen,string);
    SendClientMessage(pID,grau,string2);
    return 1;
    }

    Jetzt hab ich es so aber er zeigt mit immernoch die ID an



    ocmd:givegun(playerid,params[])
    {
    new pID,weapon,ammo,gunname;
    if(sscanf(params,"weapon",pID,gunname,ammo)){
    return SendClientMessage(playerid,hellblau,"Benutze: /givegun[SpielerID][Waffe][Munition]");
    }
    if(!IsPlayerConnected(pID)){
    return SendClientMessage(playerid,Rot,"Der Spieler ist nicht online!");
    }
    new string[128],string2[128],aname[MAX_PLAYER_NAME],name[MAX_PLAYER_NAME];
    GetWeaponName(gunname,string2,sizeof(gunname));
    GivePlayerWeapon(pID,weapon,ammo);
    GetPlayerName(playerid,aname,sizeof(aname));
    GetPlayerName(pID,name,sizeof(name));
    format(string,sizeof(string),"Du hast %s eine Waffe mit der ID:%d und mit %d Schuss gegeben!",name,gunname,ammo);
    format(string2,sizeof(string2),"%s hat dir eine Waffe mit der ID:%d und mit %d Schuss gegeben",aname,gunname,ammo);
    SendClientMessage(pID,Gruen,string);
    SendClientMessage(pID,grau,string2);
    return 1;
    }

    Moin Leute,


    mein /givegun Befehl sieht derzeit so aus


    ocmd:givegun(playerid,params[])
    {
    new pID,weapon,ammo;
    if(sscanf(params,"weapon",pID,weapon,ammo)){
    return SendClientMessage(playerid,hellblau,"Benutze: /givegun[SpielerID][WaffenID][Munition]");
    }
    if(!IsPlayerConnected(pID)){
    return SendClientMessage(playerid,Rot,"Der Spieler ist nicht online!");
    }
    new string[128],string2[128],aname[MAX_PLAYER_NAME],name[MAX_PLAYER_NAME];
    GivePlayerWeapon(pID,weapon,ammo);
    GetPlayerName(playerid,aname,sizeof(aname));
    GetPlayerName(pID,name,sizeof(name));
    format(string,sizeof(string),"Du hast %s eine Waffe mit der ID:%d und mit %d Schuss gegeben!",name,weapon,ammo);
    format(string2,sizeof(string2),"%s hat dir eine Waffe mit der ID:%d und mit %d Schuss gegeben",aname,weapon,ammo);
    SendClientMessage(playerid,Gruen,string);
    SendClientMessage(pID,grau,string2);
    return 1;
    }



    Ich möchte aber das er mir nicht die ID von den Waffen bei


    format(string,sizeof(string),"Du hast %s eine Waffe mit der ID:%d und mit %d Schuss gegeben!",name,weapon,ammo);
    format(string2,sizeof(string2),"%s hat dir eine Waffe mit der ID:%d und mit %d Schuss gegeben",aname,weapon,ammo);


    anzeigt, sondern den Namen der Waffe und wenn es geht sollte der Spieler auch nur bestimmte Waffen geben können.


    Ich hoffe Ihr könnt mir helfen :S