Nein 3 mal nachkontrolliert und ich war auch an der richtigen Position, mein Pickupsystem für waffen hat gesponnen darum waren alle Id`s verschoben geklärt
Beiträge von carlos1710
-
-
Guten Abend Breadfish,
ich erstelle mit folggener Syntax ein Pickup:
GymLSInterior[0] = CreatePickup(1318,1,2229.5232,-1721.9972,13.5685,0);
Keine errors doch das Pickup wird nicht angezeigt, es ist vor der Sporthalle in LS. Ein Pfeil der NUR in der standardisierten Virteullen Welt angezeigt werden soll und für immer bleibt als Eingang.
Doch er wird nicht angezeigt. Andere Pickups ( Meine wafefnpickups) die unter Funktionen Createt werden sieht man auch doch die die ich unter OnGameModeInit Create bleiben unsichtbar. -
Yoa erstma meine Frundin fickn (falss ichs nicht überlebe).
Dann mit kumpls ein ansaufen und das tun was mammi mir immer verboten hat, besoffen färhts sich am besten und den ein oder anderen Zombie nimmt man auchnoch mit.
Wenn der Sprit alle is pach ich ne Dose A&W Root Beer aus, geniese es und dann gehts weiter, ich hab connections in die U.S Base in Wiesbaden, amerikanische ehemaligen Nachbarn wohnen nun da und ich denk die haben dort genug die Ammis 2 darf ich mitnehmen, wer schließt sich mir an -
Ich suche einen Algorithmus mit dem ich die 3 größten Werte einer Arry in einer anderen Arry speicher.
So habe ich angefangen:
for(new i = 0;i < sizeof Gangzonen;i++)
{
Bigger[i] = GetBiggest(i);
if(Bigger[i] == 0) Bigger2 = Gangzonen[i][GrovePPL];
if(Bigger[i] == 1) Bigger2 = Gangzonen[i][BallasPPL];
if(Bigger[i] == 2) Bigger2 = Gangzonen[i][VagosPPL];
if(Bigger[i] == 3) Bigger2 = Gangzonen[i][AztecasPPL];
if(Bigger[i] == 4) Bigger2 = 0;
if(Bigger2 > TempBigger[0]) {TempBigger[0] = Bigger2;TempBigger[1] = i;} //TempBigger[0] ist die größte Zahl, TempBigger[i] ist die Herkunft
}
Damit bekomme ich den Größten Wert dieser Arry und speicher ihn unter TempBigger[0]
wie bekomm ich den 2. und 3. größten? Dabei darf keine Zahl genau so groß sein wie TempBigger[0] gleichgroße zahlen werden aussortiert. Sollte die Arry nur 2 verschiedene Elemente haben, dann NUR dann darf das größte element doppelt vorkommen oder wenn die arry nur 1 zahl in ihren verschiedenen elementen hat nur dann darf 3 mal das selbe gespeichert werden. -
Tank nicht gespeichert
-
enum gangzonen_daten
{
Zone,
Besitzer,
GroveKills,
BallasKills,
VagosKills,
AztecasKills,
GrovePPL,
BallasPPL,
VagosPPL,
AztecasPPL,
Float:zone_minx,
Float:zone_miny,
Float:zone_maxx,
Float:zone_maxy
}new Gangzonen[10][gangzonen_daten];
Interessant ist, dann nur gangzone 8 und 7 nocht angezeigt werden, gangzone 9 tut es wieder
//EDIT: gefunden die zone ist falsch justiert -
Gibt es eine Maximale Anzahl an Gangzonen die für einen Spieler angezeigt werden ?
Ich habe das Problem das ein eine Gangzone erstell, diese aus der datenbank geladen wird (durch prints gefrüft) und alle werden geladen auser 2.
for(new i = 0;i < sizeof Gangzonen;i++)
{
LoadGangzone(i);
printf("%d %f %f %f %f d",i,Gangzonen[i][zone_minx],Gangzonen[i][zone_miny],Gangzonen[i][zone_maxx],Gangzonen[i][zone_maxy]);
Gangzonen[i][Zone] = GangZoneCreate(Gangzonen[i][zone_minx],Gangzonen[i][zone_miny],Gangzonen[i][zone_maxx],Gangzonen[i][zone_maxy]);
}
Alle werden Geladen
for(new i = 0;i < sizeof Gangzonen;i++)
{
GangZoneShowForPlayer(playerid,Gangzonen[i][Zone],COLOR_WHITE);
printf("%d",i);
}
Alle angezeigt aber für den Spieler bleiben die letzten beiden unsichtbar -
Dankeschön hab alles angeschaut aber das es so einfach ist ^^. . .
-
Kennt sich jemand mit diesem Programm aus?
Ich möchte in diese Tabelle manuel Daten eintragen z.B. die coordinaten die der server liest. -
dann erklär mir was das *-1 bedeutet ich verwende floatdiv da mein compiler rumheult wenn ich 2 intger dividire.
//EDIT: funktioniert dashier nicht ?
(1000 - hp)/10 damit sparst du dir doch das *-1 -
new Float:hp, VHealth[64], Float:schaden;
GetVehicleHealth(GetPlayerVehicleID(i),hp);
schaden = floatdiv(1000 - hp, 10);//du teilst den schaden durch 10
format(VHealth,sizeof(VHealth),"~b~Schaden: ~w~%.0f%",schaden);
TextDrawSetString(Zustand[i],VHealth);
Damit sollte es eig schon gewesen sein. Bitte testen -
subtrahiere den zustand von 1000 (ich denke du meinst autos)
dann weist du wie kaputt es ist und kannst damit anhand des schadens ausrechnen wie viel das von 1000 sind.
Hast du schon was angefangen dann zeig ma code -
Wiso gibst du uns keine Zeilen?
Den error hast du weil FreezePlayer undefiniert ist. -
Ich möchte, dass der Spieler direkt nach dem Spawnen diese Amination ausführt:
ApplyAnimation(playerid,"CRACK","crckdeth2",4.0, 1, 0, 0, 0, 0, 1);
und zwar so lange bist ein Timer diese Animation stoppt, doch der Compiler ignoriert den animationscode einfach.else if(Spieler[playerid][Todeszeit] > 0)
{
SetPlayerPos(playerid, Spieler[playerid][posx], Spieler[playerid][posy], Spieler[playerid][posz]);
print("vor animation");
ApplyAnimation(playerid,"CRACK","crckdeth2",4.0, 1, 0, 0, 0, 0, 1);
print("nach animation");
sterbetimer[playerid] = SetTimerEx("OnPlayerSterben", 10000, false, "d", playerid);//SetPlayerWeather(playerid, -68);
}public OnPlayerSterben(playerid)
{
if(Spieler[playerid][Todeszeit] == 1)
{
ClearAnimations(playerid);
KillTimer(sterbetimer[playerid]);
SetPlayerHealth(playerid,0);
}
else Spieler[playerid][Todeszeit]--;
}Doch der compiler Ignoriert die animation, beide Prints werden ausgegeben, wiso aber die animation nicht?
//EDIT: selbst wenn ich n timer dazwischen setze wird es ignoriert.
//EDIT: Habt ihr echt keiner ne Ahnung, ich bin hier am verzweifeln. -
Steam . . . Die läsung für alles
-
darkshadow, ja das dacht ich auch ,dass es an der position liegt, das tuts nicht eben getestet und ausm code raus genommen
//EDIT: Fehler gefunden, wenn ein Spieler eine Animation ausführt hat er keine eigene Position (0,0,0)
darum konnte diese auch nicht ermittelt werden und der spieler befad sich bei position 0,0,0 in der zone von kh 2, hab nun die position mein sterben genommen nun gehts -
Unter OnPlayerSpawn nachdem er von den Toten auferstanden ist
if(Spieler[playerid][Todeszeit] == 1)
{
for(new i = 0;i < MAX_PLAYERS;i++)//kannste ignorieren, ist das der spieler wieder ausgeraubt werden kann
{
robbed[playerid][i] = 0;
}
Spieler[playerid][Todeszeit] --;
if(IsPlayerInArea(playerid,1588.191, -9942.825, 9999.999, 618.9274)){SetPlayerPos(playerid,2036.8186,-1412.5883,16.9922);printf("K");}
else if(IsPlayerInArea(playerid,-794.0955, -9942.825, 1588.191, 618.9274)){SetPlayerPos(playerid,1176.6805,-1323.6921,14.0333);printf("l");}
else if(IsPlayerInArea(playerid,-794.0955, 618.9274, 9999.999, 9999.999)){SetPlayerPos(playerid,1608.3463,1820.8060,10.8280);printf("g");}
else if(IsPlayerInArea(playerid,-9999.999, -9942.825, -794.0955, 9999.999)){SetPlayerPos(playerid,-2661.9617,632.5511,14.4531);printf("a");}
KillTimer(sterbetimer[playerid]);//der timer ist nur dafür da, dass die todeszeit verringert wird.
}Argh fehler gefunden, mim 2. sieht man besser.
//EDIT:Verdammt doch nicht, immernoch das selbe man spawnt in ls habs eben getestet -
Guten Morgen leute,
mein Problem heute:
Eine Abfrage wo sich ein Spieler befindet um ihn dann ins jeweilige Krankenhaus zu schicken
if(IsPlayerInArea(playerid,1588.191, -9942.825, 9999.999, 618.9274)){SetPlayerPos(playerid,2036.8186,-1412.5883,16.9922);printf("LS KH1");}
else if(IsPlayerInArea(playerid,-794.0955, -9942.825, 1588.191, 618.9274)){SetPlayerPos(playerid,1176.6805,-1323.6921,14.0333);printf("LS KH2");}
else if(IsPlayerInArea(playerid,-794.0955, 618.9274, 9999.999, 9999.999)){SetPlayerPos(playerid,1608.3463,1820.8060,10.8280);printf("LV KH");}
else if(IsPlayerInArea(playerid,-9999.999, -9942.825, -794.0955, 9999.999)){SetPlayerPos(playerid,-2661.9617,632.5511,14.4531);printf("SFKH");}
Die Spielerpositionen stimmen und auch die Zonen der Krankenhäuser (Gefrüft duch farbige Gangzonen) jedes Krankenhaus hat sein eigenes Gebiet trotzdem
spawnen die Spieler IMMER am LS KH2 LosSantos Krankenhaus 2
IsPlayerInArea(playerid, Float:MinX, Float:MinY, Float:MaxX, Float:MaxY)
{
new Float:X, Float:Y, Float:Z;GetPlayerPos(playerid, X, Y, Z);
if(X >= MinX && X <= MaxX && Y >= MinY && Y <= MaxY) {
return 1;
}
return 0;
}
Hier die Funktion aber bei den Gangzonen der verschiedenen Gangs gibt es keine Probleme mit dieser Funktion -
Nabend Breadfish,
ich habe streit mit Animationen, der Spieler macht alles auser diese Animation ausführen:
//Ganz oben
UsePlayerPedAnims();
//OnPlayerDeath
if(Spieler[playerid][Todeszeit] > 0)
{
SetPlayerPos(playerid, Spieler[playerid][posx], Spieler[playerid][posy], Spieler[playerid][posz]);
ApplyAnimation(playerid,"CRACK","crckdeth2",4.0, 1, 0, 0, 0, 0);
sterbetimer[playerid] = SetTimerEx("OnPlayerSterben", 10000, true, "d", playerid);//Problem das passirt nicht der Spieler spawnt und ist frei beweglich
//SetPlayerWeather(playerid, -68);
}EDIT: Rechtschreibfehler
//Push 48h Push Regel
Der Spieler Spawnt immernoch ohne rücksicht auf den Animations Code
//Push nun ist es so das aus der sicht des toten die animation ist aus der sicht der anderen steht der spieler.
manchmal ist die animation auch garnicht an und der tote kann rumlaufen. -
Verwende keine leerzeichen im Liedtitel