hast du die DrawDistance (DD) auch nicht auf 0.0 ???
CreateObject(modelid, Float:X, Float:Y, Float:Z, Float:rX, Float:rY, Float:rZ, Float:DD);
Beiträge von mari0_DE
-
-
Respekt echt gutes Carsys gut gelungen gute Funktionen.
Auf den ersten Blick keine Mängel.have fun
-
-
2 Hilfreiche Funktionen
GetVehicleRotation
stock GetVehicleRotation(vehicleid,&Float:x, &Float:y, &Float:z)// by DANGER1979
{
new Float:quat_w,Float:quat_x,Float:quat_y,Float:quat_z;
GetVehicleRotationQuat(vehicleid,quat_w,quat_x,quat_y,quat_z);
ConvertNonNormaQuatToEuler(quat_w,quat_x,quat_z,quat_y, z, y, x);
x = -1*x;
return 1;
}
und IsCarOnRoof | sensetive: 179.9 = sehr sehr sehr Sensibel | 91.0 nicht Sensibel | 140.0 normal
stock IsCarOnRoof(vehicleid,Float:sensetive)// by mari0_DE aka Kanti
{
new Float:XD[3];
new Float:quat_w,Float:quat_x,Float:quat_y,Float:quat_z;
GetVehicleRotationQuat(vehicleid,quat_w,quat_x,quat_y,quat_z);
ConvertNonNormaQuatToEuler(quat_w,quat_x,quat_z,quat_y, XD[2], XD[1], XD[0]);
XD[0] = -1*XD[0];
if(XD[0] >= sensetive || XD[0] <= -sensetive || XD[1] >= sensetive || XD[1] <= -sensetive)
{
return 1;
}
return 0;
}Aber man braucht für Beide Diese Funktion:
stock ConvertNonNormaQuatToEuler(Float: qw, Float: qx, Float:qy, Float:qz,
&Float:heading, &Float:attitude, &Float:bank)// by DANGER1979
{
new Float: sqw = qw*qw;
new Float: sqx = qx*qx;
new Float: sqy = qy*qy;
new Float: sqz = qz*qz;
new Float: unit = sqx + sqy + sqz + sqw; // if normalised is one, otherwise is correction factor
//åñëè normalised, - îäèí, â ïðîòèâíîì ñëó÷àå - ïîêàçàòåëü êîððåêöèè
new Float: test = qx*qy + qz*qw;
if (test > 0.499*unit)
{ // singularity at north pole - îñîáåííîñòü íà ñåâåðíîì ïîëþñå
heading = 2*atan2(qx,qw);
attitude = 3.141592653/2;
bank = 0;
return 1;
}
if (test < -0.499*unit)
{ // singularity at south pole - îñîáåííîñòü íà þæíîì ïîëþñå
heading = -2*atan2(qx,qw);
attitude = -3.141592653/2;
bank = 0;
return 1;
}
heading = atan2(2*qy*qw - 2*qx*qz, sqx - sqy - sqz + sqw);
attitude = asin(2*test/unit);
bank = atan2(2*qx*qw - 2*qy*qz, -sqx + sqy - sqz + sqw);
return 1;
}have fun
Mit freundlichen Grüßen
mari0_DE aka Kanti//Versions Update.
-
-
naja da du return benutzt bei deiner if(Admin) abfrage brauchst du das else und die klammern gar nicht
Probiers mal ohne.//wenn das nicht dan hab ich keine Ahnung xD
-
nur das else weg in Reihe5
dcmd_admcreate(playerid,params[])
{
new cmodelid, cfarbe1, cfarbe2, cpreis, ctunbar, cjob, cfraktion;
if(sscanf(params, "ddddddd", cmodelid,cfarbe1,cfarbe2,cpreis,ctunbar,cjob,cfraktion)) return SendClientMessage(playerid, COLOR_WHITE, "Verwendung: /admcreate ModelID Farbe1 Farbe2 Preis Tunbar Job Fraktion");
/*HIER*/if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,COLOR_GREY,"Du bist kein RCON Admin");//<------ vorne das else weg xD
else
{
Mit freundlichen Grüßen
mari0_DE aka Kanti -
stock IsSameAs(string1[],string2[])// mari0_DE aka Kanti
{
if(strlen(string1)!=strlen(string2))
return 0;
for(new i = 0; i < strlen(string1) ;i++)
{
if(string1[i]!=string2[i])
{
return 0;
}
}
return 1;
}
Diese Funktion Überprüft ob die Strings Exakt gleich sind! auch die Längeund nochmal Kurz:
stock IsSameAs(string1[],string2[]){// mari0_DE aka Kanti
if(strlen(string1)!=strlen(string2))return 0;
for(new i = 0; i < strlen(string1) ;i++){
if(string1[i]!=string2[i])return 0;
}
return 1;
}
Have Fun! -
public heelthtimer(){
for (new i = 0; i < MAX_PLAYERS; i++)
{
new Float:health;
GetPlayerHealth(i,health);
if(health > 20.0)
{
if(StopNachicht==0)
{
SendClientMessage(i,COLOR_LIGHTRED,"Ich muss mich schnell Healen sonst werde ich streben!");
StopNachicht=1;
}
}
else
{
StopNachicht=0;
}
}
return 1;
}
public heelthtimer()
{
for (new i = 0; i < MAX_PLAYERS; i++)
{
new Float:health;
GetPlayerHealth(i,health);
if(health < 20.0)
{
StopNachicht++;
if(Stopnachricht==1)
{
SendClientMessage(i,COLOR_LIGHTRED,"Ich muss mich schnell Healen sonst werde ich streben!");
}
if(StopNachricht==1000*60)
{
SendClientMessage(i,COLOR_LIGHTRED,"Ich muss mich schnell Healen sonst werde ich streben!");
StopNachicht=0;
}
}
else{
StopNachicht=0;
}
}
}
return 1;
}
have fun -
ich würde eher so sagen:(Linux nur antworten wenn du Ahnung hast!! bitte)
new LSPPOS[3][LSP]={
{1273.0835,-819.0178,84.1406},
{1277.6268,-818.7731,84.1406},
{1284.8733,-818.7379,84.1406}
};und das hier so:
public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == LSPickup) { new LS = random(3);DestroyPickup(LSPickup); LSPickup = CreatePickup(1274, 23, LSPPOS[LS][x], LSPPOS[LS][y], LSPPOS[LS][z], -1); return 1; }
return 1;
} -
Nein, das kann man nicht weg machen!
ups zu spät. -
Es gibt 2 verschieden Kreisbahnen auf denen Züge fahren können.
du musst einfach nur in der nähe der einen bahn stehen und schon hast du auf dieser bahn eine Erstellt.(sie werden automatisch auf die nähere bahn gestellt.)
die eine bahnen ist die Tram-strecke die andere die Zug strecke. -
konnte man dann auch in die Züge einsteigen??
-
so jetzt aber.
-
jetzt Müsste es aber gehen!
-
nimm mal die neue Version 0.2 die müsste jetzt auch bei dir Funktionieren.
-
ja bool ist ressourcenschonender
-
Es ist nix anderes als ShowPlayerDialog, ausser das das Player nicht mit drin ist,
fail !!!!
es ist Zeit verzögert dadurch wird ein Bug in sa:mp umgangen!!
-
hast du ein Timer drin der Ab frägt ob der Spieler an einer Bestimmten stelle ist?
-
Version:
- Version 0.4
Changelog:- 0.1 zu 0.2:
- bugfix
- 0.2 zu 0.3:
- bugfix
- 0.3 zu 0.4:
- bugfix
Vorwort:- Es gibt ja den Bekannten Fehler wenn man einen Dialog ausgibt das dann nicht immer alles gemacht wird was man will.
oder auch anders ausgedrückt:
Topic die mich darauf gebracht hatShowPlayerDialog ist gerne Offensiv und zeigt halt nicht die gewünschte Kameraposition an.
Dieses Problem hat mich auch schon beschäftigt.
Deshalb hab ich ein wirklich kleines Include gemacht um dieses Problem Aus der Welt zu schaffen.
Bedinung:- Es ist ganz einfach zu Bedinen:
Bei OnGameModeInit das hier rein:
ShowDialogOn();
und Anstatt
ShowPlayerDialog(XX);
einfach
ShowDialog(XX);
benutzten.
der Inhalt kann gleich bleiben.
Jedoch darf die Überschrift nicht Länger als 100 Zeichen sein.
die Info[] nicht länger als 1024 und die Buttons[] nicht Länger alsjeweils 50.
Und natürlich #include <ShowDialog> nicht vergessen.
Download unten im Anhang bzw. P.com