Beiträge von KING136

    Hi,



    enum Autohausinfo {
    Autohausname[60],
    Float:X,
    Float:Y,
    Float:Z,
    Float:SpawnX,
    Float:SpawnY, Float:SpawnZ,
    Float:SpawnA,
    Inhaber[MAX_PLAYER_NAME],
    Kasse
    }; //Hier die veränderung
    enum Autokauf {
    modelid,
    Name[40],
    Autohausname[60],
    Preis,
    Float:PosX,
    Float:PosY,
    Float:PosZ,
    Float:PosA // - Hier die veränderung
    }; // Hier die veränderung


    new Autohaus[1][Autohausinfo] = {
    {"Teddys Billighaus",543.4729,-1293.7830,17.2422,533.5169,-1276.6116,17.2422,221.4714,"Teddy",0}
    };
    new Billigautos[1][Autokauf] = {
    {404,"Perenniel","Teddys Billighaus",5750,742.5615,-1374.5509,25.6922,262.6618}
    };


    MFG

    wollte eh mal fragen was daran buggy ist weil man kann nur Gebiet eins angreifen Hier der Befehl bzw alles vom Gebiet:



    //--DAS ist bei mir ganz oben-----


    enum gebiet//Dies leitet eine genauere Beschreibung für einen Array ein.
    {
    gOwner,//Hier wird die Fraktionsid gespeichert, der das Gebiet im moment gehört
    Float:gMinX,//MinX - Koordinate für die Gangzone
    Float:gMinY,//MinY
    Float:gMaxX,//MaxX
    Float:gMaxY,//MaxY
    gOn,//Ob der Gangfight läuft
    gStand1,//Der Score für das Owner Team
    gStand2,//Score für die Angreifer
    gAngreifer//Hier wird die Fraktionsid gespeichert
    };


    new Gebiete[18][gebiet] = {//Erstellt eine Variable mit der Anzahl der Gebiete in der ersten [] angegeben und in der zweiten wird das Enum von oben eingefügt. (Dient zur genaueren Beschreibnung)
    //Hier werden dann die Zonen erstellt, eigentlich alles auf 0 lassen, außer die Koordinaten...
    {8,2737.4934,-1489.3401,2847.5774,-1230.9340,0,0,0,0},
    {9,2614.9209,-1832.7828,2541.3308,-1647.2617,0,0,0,0},
    {10,2606.2610,-2580.5198,2860.4028,-2322.2412,0,0,0,0},
    {11,1877.0497,-1146.0465,2056.5168,-1250.5948,0,0,0,0},
    {12,900.6957,-1821.7444,778.4864,-2073.3267,0,0,0,0},
    {13,1689.6215,-1170.5763,1831.0482,-1069.9423,0,0,0,0},
    {14,-1919.8407,-710.1276,-2153.6289,-1000.5717,0,0,0,0},
    {15,-2284.9307,59.4707,-2384.6118,256.5312,0,0,0,0},
    {16,-2722.5874,1491.4686,-2565.6169,1349.1218,0,0,0,0},
    {17,-1734.8204,1357.6724,-1603.7792,1394.6857,0,0,0,0},
    {8,-1357.8436,1507.9801,-1488.0469,1474.9901,0,0,0,0},
    {9,-1414.2943,132.8722,-1739.8848,72.3446,0,0,0,0},
    {10,289.3071,1335.4486,110.1690,1486.3530,0,0,0,0},
    {11,1012.6032,1362.9174,1177.6165,1802.8822,0,0,0,0},
    {12,1418.2599,2066.6470,1294.6589,2222.8787,0,0,0,0},
    {13,2776.8530,2293.3147,2989.5046,2570.7114,0,0,0,0},
    {14,2682.1748,2122.1094,2537.6348,2223.4187,0,0,0,0},
    {15,1936.7078,2273.3486,2026.4342,2202.4570,0,0,0,0}
    };


    new Gebiet[18];//Hier werden die "GangZones" gespeichert, damit wir diese in Farbe setzen können usw...


    forward GangFight(gebietid);//Dies ist eine Überschrift einer public funktion. (Dies wird für den Timer verwendet, wann der GangWar stoppt.)
    forward UpdateZones();//Damit werden die Farben der zonen aktualisiert.


    //---Das unter GmaemodeInit----


    SetTimer("UpdateZones",10000,1);//Hier wird ein Timer gestartet der jede 10 sekunden die Funktion UpdateZones startet.


    //---Das unter Spawn----


    for(new i; i<sizeof(Gebiete); i++)//Damit alle gebiete durchlaufen werden
    {
    new color;//Erstellt eine neue Variable
    if(Gebiete[i][gOwner] == 8){color=LILA;}//Hier wird abgefragt welcher Fraktion das Gebiet gehört, damit dann die Farbe dafür gesetzt wird
    if(Gebiete[i][gOwner] == 9){color=GRÜN;}
    if(Gebiete[i][gOwner] == 10){color=GELB;}
    if(Gebiete[i][gOwner] == 11){color=GRAU;}
    if(Gebiete[i][gOwner] == 12){color=WEISS;}
    if(Gebiete[i][gOwner] == 13){color=TÜRKIS;}
    if(Gebiete[i][gOwner] == 14){color=SCHWARZ;}
    if(Gebiete[i][gOwner] == 15){color=ROT;}
    if(Gebiete[i][gOwner] == 16){color=BRAUN;}
    GangZoneShowForPlayer(playerid, Gebiet[i], color); // Hier wird dann die Zone gezeigt. Als erstes die spielerid, und die ist bei OnPlayerSpawn nunmal mit playerid definiert, dann welches Gebiet also Gebiet^^ und als letztes die Farbe die wir oben definiert haben.
    }



    //---Das unter death---- alles onplayer-----


    for(new i; i<sizeof(Gebiete); i++)
    {
    GangZoneHideForPlayer(playerid,Gebiet[i]);//Für wenn das Gebiet versteckt werden soll.... und welches Gebiet
    }
    if(IsPlayerInGebiet(playerid) > -1)//Ob der gestorbene in einem GF gebiet war
    {
    new zone = IsPlayerInGebiet(playerid);//Übergibt die Zoneid
    new fID = Gebiete[zone][gAngreifer];
    new aID = Gebiete[zone][gOwner];
    if(Gebiete[zone][gOn] == 1)//Ob dort Gangfight läuft
    {
    if(isPlayerInFrakt(playerid,aID))//Ob der Tote in der Besitzer Fraktion ist
    {
    if(isPlayerInFrakt(killerid,fID))//Ob der Mörder in der Gegnrischer Partei ist.
    {
    Gebiete[zone][gStand2] +=1;//Dann bekommen die Gegner Punkte
    }
    }
    if(isPlayerInFrakt(playerid,fID))//Siehe oben nur umgekehrt.. :P
    {
    if(isPlayerInFrakt(killerid,aID))
    {
    Gebiete[zone][gStand1] +=1;
    }
    }
    }
    }


    //--Das ist mein Befehl----


    ocmd:krieg(playerid,params[])
    {
    if(isPlayerInFrakt(playerid,8)||isPlayerInFrakt(playerid,9)
    ||isPlayerInFrakt(playerid,10)||isPlayerInFrakt(playerid,11)
    ||isPlayerInFrakt(playerid,12)||isPlayerInFrakt(playerid,13)
    ||isPlayerInFrakt(playerid,14)||isPlayerInFrakt(playerid,15)
    ||isPlayerInFrakt(playerid,16))//Hier wird abefragt welche Fraktion einen Gangfight starten darf
    {
    if(IsPlayerInGebiet(playerid) >= 0)//Ob der Spieler in einem Gebiet ist.
    {
    if(GetPVarInt(playerid,"Leader") == 1)
    {
    new zone = IsPlayerInGebiet(playerid);//Die Gebietsid wird in der Variable zone gespeichert.
    if(Gebiete[zone][gOn] == 1) return SendClientMessage(playerid,BLAU,"Das Gebiet wird schon angegriffen!");//Hier wird abgefragt ob das Gebiet schon bekämpft wird
    if(Gebiete[zone][gOwner] == GetPVarInt(playerid,"Fraktion")) return SendClientMessage(playerid,BLAU," Deine Fraktion ist im Besitzt dieses Gebietes");//Hier wird abgefragt ob die Fraktion schon im besitzt dieser Funktion ist
    Gebiete[zone][gAngreifer] = GetPVarInt(playerid,"Fraktion");//Hier wird der Angreifer gesetzt.
    Gebiete[zone][gOn] = 1;//Das der Gangfight für dieses Gebiet läuft
    SetTimerEx("GangFight",300000,0,"i",zone); //Dies startet einen Timer der eine Stunde läuft , damit beenden wir den Gangifght. Die Zoneid wird mit übergeben
    for(new i; i<MAX_PLAYERS; i++)//Damit jeder Spieler abgefragt wird
    {
    new fID = Gebiete[zone][gOwner];
    new aID = Gebiete[zone][gAngreifer];
    if(isPlayerInFrakt(i,fID))//Ob spieler oder Leader in dieser Fraktion ist
    {
    SendClientMessage(playerid,ORANGE,"**Achtung**:Eines ihrer Gebiete wird angegriffen.");//Sendet eine Mitteilung
    return 1;
    }
    if(isPlayerInFrakt(i,aID))//siehe oben
    {
    SendClientMessage(playerid,GELB,"**Info**:Dein Leader hat ein Gangwar gestartet!");
    return 1;
    }
    }
    }
    return SendClientMessage(playerid,ROT,"Du bist kein Leader!");
    }
    return SendClientMessage(playerid,ROT,"Du bist in keinem Gangwar Gebiet!");
    }
    return SendClientMessage(playerid,ROT,"Du bist kein Mitglied einer Gang oder Mafia!");
    }


    //--Meine publics----


    public GangFight(gebietid)
    {
    Gebiete[gebietid][gOn] = 0;
    if(Gebiete[gebietid][gStand2] > Gebiete[gebietid][gStand1])//Hier wird abgefragt ob der Stand des angreigers größer ist als des Owners...
    {
    Gebiete[gebietid][gOwner] = Gebiete[gebietid][gAngreifer]; //Hier wird ein neuer Owner gesetzt, da die Angreifer gewonnen haben...
    }
    //Wenn der Owner gewonnen hat bleibt die Gleich :P
    new string[128];//ersteltl eininen string :D
    format(string,sizeof(string),"Der Gewinner des Gebiets %d ist Fraktionsid: %d und hat mit %d : %d gewonnen",gebietid,Gebiete[gebietid][gOwner],Gebiete[gebietid][gStand1],Gebiete[gebietid][gStand2]);//Erstellt eine Message mit Variablen
    SendClientMessageToAll(GRÜN,string);
    Gebiete[gebietid][gStand2]= 0; //Setzt die Scores zurück
    Gebiete[gebietid][gStand1]=0;//oben
    Gebiete[gebietid][gAngreifer]=0;//oben
    return 1;
    }


    public UpdateZones()
    {
    for(new player; player < MAX_PLAYERS; player++)//Damit alle Spieler durchlaufen werden
    {
    for(new i; i<sizeof(Gebiete); i++)//Damit alle Gebiete durchlaufen werden
    {
    GangZoneHideForPlayer(player,Gebiet[i]);//Damit werden alle Gebiete für alle User versteckt
    new color;//Erstellt eine neue Variable
    if(Gebiete[i][gOwner] == 8){color=LILA;}//Hier wird abgefragt welcher Fraktion das Gebiet gehört, damit dann die Farbe dafür gesetzt wird
    if(Gebiete[i][gOwner] == 9){color=GRÜN;}
    if(Gebiete[i][gOwner] == 10){color=GELB;}
    if(Gebiete[i][gOwner] == 11){color=GRAU;}
    if(Gebiete[i][gOwner] == 12){color=WEISS;}
    if(Gebiete[i][gOwner] == 13){color=TÜRKIS;}
    if(Gebiete[i][gOwner] == 14){color=SCHWARZ;}
    if(Gebiete[i][gOwner] == 15){color=ROT;}
    if(Gebiete[i][gOwner] == 16){color=BRAUN;}
    GangZoneShowForPlayer(player, Gebiet[i], color); //Zeigt die Zone f ür die Spieler wieder mit der neuen/alten Farbe
    if(Gebiete[i][gOn] == 1)//Fragt ab ob Gangfight in einem Gebiet läuft
    {
    if(Gebiete[i][gAngreifer] == 8){color=LILA;}//Hier wird abgefragt welcher Fraktion das Gebiet gehört, damit dann die Farbe dafür gesetzt wird
    if(Gebiete[i][gAngreifer] == 9){color=GRÜN;}
    if(Gebiete[i][gAngreifer] == 10){color=GELB;}
    if(Gebiete[i][gAngreifer] == 11){color=GRAU;}
    if(Gebiete[i][gAngreifer] == 12){color=WEISS;}
    if(Gebiete[i][gAngreifer] == 13){color=TÜRKIS;}
    if(Gebiete[i][gAngreifer] == 14){color=SCHWARZ;}
    if(Gebiete[i][gAngreifer] == 15){color=ROT;}
    if(Gebiete[i][gAngreifer] == 16){color=BRAUN;}
    GangZoneFlashForPlayer(player,Gebiet[i],color);//"Flasht die Zone" in der Angreifer Farbe und Owner Farbe
    }
    }
    }
    return 1;
    }


    //---Mein stock---


    stock IsPlayerInGebiet(playerid)
    {
    for(new i;i<sizeof(Gebiete);i++)
    {
    new Float:GetX,Float:GetY,Float:GetZ;
    GetPlayerPos(playerid,GetX,GetY,GetZ);
    if(Gebiete[i][gMinX] < GetX && Gebiete[i][gMaxX] > GetX && Gebiete[i][gMinY] < GetY && Gebiete[i][gMaxY] > GetY)
    {
    return i;
    }
    return -1;
    }
    return -1;
    }




    Bitte um hilfe



    MFG

    Hallo zusammen,


    falls noch keine Lösung.


    Hier ist ein Tipp bzw Lösung dafür (ich geh mal davon aus das du alles in dini speicherst und den score auch in dini hast).


    Also:


    1.Bei OnPlayerDeath(playerid.... machst du noch killerid rein falls diese nochnicht drin ist.
    2.Da machst du eine abfrage z.B. if(GetPVarInt(playerid,"dm1") == 1)
    3.Jetzt machst du (das bedeudet das wenn dm1 das kannst du dann in deinen Befehl rein setzten auf 1 ist wird das gemacht was danach kommt) in deinem fall kommt das: SetPVarInt(playerid,"Score",GetPVarInt(playerid,"Score")-1); und wenn noch die killerid(der der den Getötet hat) noch den score auf +1 bekommen soll einfach playerid durch killerid ersetzten und +1 hinten machen, dann kannst du noch ein return 1; setzten und fertig ist dein Befehl. Du kannst ja auch noch mit killerid arbeiten usw.


    Der Befehl sieht dann so aus:

    if(GetPVarInt(playerid,"dm1") == 1)
    {
    SetPVarInt(playerid,"Score",GetPVarInt(playerid,"Score")-1);
    SetPVarInt(killerid,"Score",GetPVarInt(killerid,"Score")-1);
    return 1;
    }


    Ich hoffe ich kann helfen.


    MFG

    Hallo zusammen,
    nachdem ich die Gangzonen eingefügt habe wird meine Minikarte (links unten) ab und zu bunt also zu einer Gangfarbe den das Gebiet in der Nähe gehört!


    Hier die Zonen:

    new Gebiete[18][gebiet] = {//Erstellt eine Variable mit der Anzahl der Gebiete in der ersten [] angegeben und in der zweiten wird das Enum von oben eingefügt. (Dient zur genaueren Beschreibnung)
    //Hier werden dann die Zonen erstellt, eigentlich alles auf 0 lassen, außer die Koordinaten...
    {8,2737.4934,-1489.3401,2847.5774,-1230.9340,0,0,0,0},
    {9,2614.9209,-1832.7828,2541.3308,-1647.2617,0,0,0,0},
    {10,2606.2610,-2580.5198,2860.4028,-2322.2412,0,0,0,0},
    {11,1877.0497,-1146.0465,2056.5168,-1250.5948,0,0,0,0},
    {12,900.6957,-1821.7444,778.4864,-2073.3267,0,0,0,0},
    {13,1689.6215,-1170.5763,1831.0482,-1069.9423,0,0,0,0},
    {14,-1919.8407,-710.1276,-2153.6289,-1000.5717,0,0,0,0},
    {15,-2284.9307,59.4707,-2384.6118,256.5312,0,0,0,0},
    {16,-2722.5874,1491.4686,-2565.6169,1349.1218,0,0,0,0},
    {17,-1734.8204,1357.6724,-1603.7792,1394.6857,0,0,0,0},
    {8,-1357.8436,1507.9801,-1488.0469,1474.9901,0,0,0,0},
    {9,-1414.2943,132.8722,-1739.8848,72.3446,0,0,0,0},
    {10,289.3071,1335.4486,110.1690,1486.3530,0,0,0,0},
    {11,1012.6032,1362.9174,1177.6165,1802.8822,0,0,0,0},
    {12,1418.2599,2066.6470,1294.6589,2222.8787,0,0,0,0},
    {13,2776.8530,2293.3147,2989.5046,2570.7114,0,0,0,0},
    {14,2682.1748,2122.1094,2537.6348,2223.4187,0,0,0,0},
    {15,1936.7078,2273.3486,2026.4342,2202.4570,0,0,0,0}
    };


    Bitte um Hilfe


    MFG

    Hallo zusammen,


    und zwar hab ich ein Problem bei:



    if(strcmp("/drivein", cmdtext, true) == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,X,Y,Z))
    {
    if(GetPlayerState(playerid)!=PLAYER_STATE_DRIVER)return SendClientMessage(playerid,ROT,"Du bist kein Fahrer in einem Fahrzeug!");
    {
    return 1;
    }
    }
    return SendClientMessage(playerid,ROT,"...TEST...");
    }


    Sollte ja eigentlich klappen, klappt ja auch soweit alles nur wenn ich mit dem Auto dahin fahre, und den befehl eingebe kommt du bist nicht in der Nähe.
    Wenn ich aussteige und dahin gehe steht da du bist nicht in einem Auto.
    Warum klappt das nicht???


    Hoffe ihr könnt mir helfen!


    MFG

    HeyHo,


    Und zwar bei GamemodeInit:


    AddPlayerClass(0,X,Y,Z,Angle,0,0,0,0,0,0);
    AddPlayerClass(1,X,Y,Z,Angle,0,0,0,0,0,0);


    PS: 0 = WaffenID
    danach die 0 = Munition


    z.B.


    AddPlayerClass(0,X,Y,Z,Angle,25,100,0,0,0,0);


    == Waffe = 25
    == Munition = 100



    MFG

    So müsste es richtig funktionieren:

    new PlayerStowny[MAX_PLAYERS]; if(strcmp(cmdtext, "/dope", true) == 0) { SetPlayerWeather(playerid, -66); SendClientMessage(playerid,COLOR_PINK,"Du hast {ADFF2F}5 Gramm Dope [Marihuana] {EE5555}zu Dir genommen, {00FFFF}Du kannst die Wirkung mit /Entzug beenden"); PlayerStowny[playerid] = 1; return 1; }
    if(strcmp(cmdtext, "/entzug", true) == 0)
    {
    if(PlayerStowny[playerid] == 1)
    {
    SetPlayerHealth(playerid,0);
    SetPlayerWeather(playerid,2);
    PlayerStowny[playerid] = 0; //Hier die veränderung!
    SendClientMessage(playerid,COLOR_GREY,"Du bist eines Drogen Todes gestorben!{EE5555} Viel Spaß in deinem neuen Leben!"); return 1;
    }
    }


    Sonst könnte man immer entzug machen



    MFG


    stock SpielerSpeichern(playerid)
    {
    if(GetPVarInt(playerid,"loggedin")==1)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
    dini_IntSet(Spielerdatei,"Premium",GetPVarInt(playerid,"Premium"));
    dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
    dini_IntSet(Spielerdatei,"Wanted",GetPVarInt(playerid,"Wanted"));
    dini_IntSet(Spielerdatei,"Baned",GetPVarInt(playerid,"Baned"));
    }
    return 1;
    }



    stock LoadAccount(playerid)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
    GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
    SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
    SetPVarInt(playerid,"Premium",dini_Int(Spielerdatei,"Premium"));
    SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
    SetPlayerWantedLevel(playerid,dini_Int(Spielerdatei,"Wanted"));//wanted
    SetPVarInt(playerid,"Baned",dini_Int(Spielerdatei,"Baned"));
    if(GetPVarInt(playerid,"Baned")==1)
    {
    SendClientMessage(playerid,ROT,"Du bist vom Server gebannt.");
    Kick(playerid);
    }
    SetPVarInt(playerid,"loggedin",1);
    return 1;
    }

    Hallo zusammen,
    Wenn ich bei OnPlayerDeath SpielerSpeichern(playerid); einfüge speichert er ja den Spieler.
    und wenn ich bei OnPlayerSpawn hinschreib LoadAccount(playerid); dann läd er ihn ja.


    Nur wenn ich sterbe und wieder spawne bekomm ich entweder mehr geld abgezogen oder mein geld *2 oder *3.


    Weiss einer eine Lösung?


    MFG

    Hallo zusammen,
    ich möchte die abfrage rein machen ob der perso bzw die bankkarte da ist also vorhanden ist.


    Zeile:

    if(GetPVarInt(playerid,"Bankkarte",1))


    Error:
    C:\Users\Leon\Downloads\GTA_SA\gamemodes\Selfmade1.pwn(2808) : warning 202: number of arguments does not match definition


    Der Error/Warning kommt, wenn ich das so einfüge wie oben eingefügt.


    Bitte um HILFE!!!!!!!!!!!!!!!


    MFG

    Hallo zusammen,


    ich habe ein dialog rein gemacht, der eingentlich so ist wie tor mit passwort, er frägt aber das ab was man davor eingeben hat so wie beim login das PW.
    Jetzt bekomme ich folgenden ERROR:
    C:\Users\Leon\Downloads\GTA_SA\gamemodes\Selfmade1.pwn(5118) : error 035: argument type mismatch (argument 2)


    Zeile:

    if(!strcmp(inputtext,GetPVarInt(playerid,"BankPin"),true))


    BITTE DRINGEND UM HILFE!!!!!!!!!!!!!!!!!!


    MFG