dan arbeite mit der random funktion
http://wiki.sa-mp.com/wiki/Random
möglich auch
new rand = random(100);
damit bekommst du eine beliebige Zahl aus welche von 0- 100 geht
dan arbeite mit der random funktion
http://wiki.sa-mp.com/wiki/Random
möglich auch
new rand = random(100);
damit bekommst du eine beliebige Zahl aus welche von 0- 100 geht
kommt jetzt an wenn du jemand zum Leader machst settest du auch da die variabel
PlayerInfo[playerid][pMember];
weil du ja dem Spieler die selbe fraktion gibst wie in der , der du bist.
du kannst ja auch mal die id printen
printf("Spieler wurde in die Fraktion %d eingeladen ",PlayerInfo[pID][pMember])
du kannst kein string addieren oder subtrahieren dazu solltest du den string konvertieren in ein integer
mit Strval
Hey kann mir einer sagen wie ich einstellen kann , wo man dann nur mit waffenschein waffen kaufen kann ?
eine neue Variabel hinzufügen welche der spieler hat wenn diese 0 ist kann der spieler nix kaufen wenn diese jedoch 1 ist kann es was kaufen
___________________________________________________________________________________________________________________________________________________________________________
Das script sieht ganz nett aus aber wirklich unnötig den command mit dcmd zu schreiben da es kein unterschied macht wenn man keine parameter als sscanf
dazu nutzt
nur als kleiner tipp und dcmd ist als commandprozessor auch nicht wirklich anders als strcmp nur das du hier besser sscanf verwenden kannst
so meine meinung darüber.
Such nach einer Geschwindigkeits berechnung oder schreib dir eine eigene Zusammen
Beispiel Berechnung aus einem gf:
new Float:speed_x,Float:speed_y,Float:speed_z,Float:final_speed,final_speed_int;
new veh = GetPlayerVehicleID(i);
GetVehicleVelocity(veh, speed_x, speed_y, speed_z);
final_speed = floatsqroot(((speed_x*speed_x)+(speed_y*speed_y))+(speed_z*speed_z))*93.0; // 136.666667 = kmph // 85.4166672= mph
final_speed_int = floatround(final_speed,floatround_round);
new kmh_anzahl = final_speed_int;
Danach den output also die geschwindigkeit lässt du in einem string auf ein Textdraw anzeigen per
TextDrawSetString. ( Beim string beachten das es keine float mehr ist sondern ein integer da es durch floatround umgeändert wird in ein integer)
und den ganzen spaß solltes du in einem timer für den spieler verfrachten du willst ja das es sich aktualisiert daher SetTimerEx benutzen
http://forum.sa-mp.de/san-andr…oinformationen-auslesen-2
hier ist ein Beispiel zur verwendung von sscanf um fahrzeuge aus einer datenbank auszulesen musst schauen
auf der zweiten Seite dort habe ich ihm ein kleines Script zusammen geschrieben.
Also schau es dir an , lern es zu verstehen und wende es danach an
xD so ein "Bug/Fehler" hab ich auch beim Compilen kannst ja die .amx löschen und das script neu compilen dann sollte es weg sein.
Bei mir ist der Fehler das er die Amx nicht richtig überschreibt die alten lässt er so die neuen nimmt er an also neue Zeilen ihrgend wie etwas seltsam ich
hab erst gedacht das ist langsam nur einbildung , jedoch ist es wirklich so.
erstell dir ein array mit dem interior , vw und den punkten
und dann kannst du beim command jeweils damit arbeiten mit dem parameter
da nehme ich dazu den command über mir
Bsp:
ocmd:setint(playerid,params[])
{
new int, string;
if(sscanf(params,"d",int)) return SendClientMessage(playerid,COLOR_GREY,"/setint [Interior]");
SetPlayerPos(playerid,IntInfo[int][Intx],IntInfo[int][Inty],IntInfo[int][Intz]);
etc........
was für loop?
so mal für die extra dumme :
Loop = Schleife
Schleifearten : for , while , goto ist auch möglich nicht empfehleneswert.
lässt du dein loop von 0 an beginnen oder 1
Du könntest mit dem Vektor der camera arbeiten
GetPlayerCameraFrontVector
jedoch kommt du um einen timer nicht frum rum der das immer übprüft.
Solltest halt dan mit einer if abfrage, abfragen ob der Spieler diese neigung hat wenn ja oder größer gegebenfalls kleiner ist solltest du dieser wieder auf einen bestimmten
hin fixxieren erneut AttachCameraToObject.
wäre eine idee
ließt du dir eigentlich auch die links mal durch würde viel helfen

Jo Fabi das kannst du viel besser , der Header passt auch nicht zum Hintergrund und es sind viel zu viele Farben im Spiel um wirklich mit schwarz zu arbeiten oder besser gesagt mit dunklen Farben, jedoch mal eine Frage und zwar zum Hintergrund hast du den mit ps bearbeitet oder ist das ein grafik mod .
Dazu gibts auch programme schau ins englsiche Forum Beispiel :
http://forum.sa-mp.com/showthread.php?t=291018
y_object hat diese Function soweit ich gesehen oder du nimmst dir den source vom streamer plugin und fügst das hinzu es hat ja schon eine funktion
jedoch nur
native AttachDynamicObjectToVehicle(objectid, vehicleid, Float:offsetx, Float:offsety, Float:offsetz, Float:rx, Float:ry, Float:rz);
ja gut. so genau hab ich da jetzt nicht hingeschaut. ich hab nur den aufgab der abfrage bearbeitet, da sie mir etwas komisch aussah.
Daran ist ja nix schlimm ich wollte nur die Function markieren ![]()
//edit
breadfish spackt ein bissle beim zitieren doppel zitat D:
Jo klar ich hab dazu eine Funktion geschrieben
diese nennt sich is
stock IsViewInRangeOfPoint(playerid, Float: r, Float: x, Float: y, Float: z)
{
new Float:GP[3], Float:GPCFV[3], Float: Output[3];
const Float: weite = 4.0;
GetPlayerCameraPos(playerid, GP[0], GP[1], GP[2]);
GetPlayerCameraFrontVector(playerid, GPCFV[0], GPCFV[1], GPCFV[2]);
Output[0] = GP[0] + floatmul(GPCFV[0], weite);
Output[1] = GP[1] + floatmul(GPCFV[1], weite);
Output[2] = GP[2] + floatmul(GPCFV[2], weite);
if((Output[0] - x)*(Output[0] - x) + (Output[1] - y)*(Output[1] - y) <= r*r && Output[2] <= z) return 1;
else return 0;
}
diese solltest halt noch an deine Verwendung anpassen hier wird berechnet ob der Spieler in einen Punkt hinein schaut die entfernung beträgt hier 4.0
da ich das für die reichweite für meinen feuerlöscher verwendet habe
//edit um das zu berechnen brauchst du den Satz des Pythagoras
GetVehicleID
diese Function GetVehicleId gibt es nicht sondern nur
http://wiki.sa-mp.com/wiki/GetPlayerVehicleID
GetPlayerVehicleID(playerid) es sei den du hast due funktion selbst geschrieben.
eine andere möglichkeit wäre mit !IsPlayerInAnyVehicle(playerid)
zu arbeiten um so abzufragen ob der spieler in keinem auto sitzt
Wenn die sich nicht mehr ändern lassen hast du evtl den falschen Materialindex - Texturennamen - Txdnamen oder eine zu 100% transparente Farbe gewählt.
Es kann auch daran liegen, das du die Objekte per CreateDynamicObject erstellst aber SetObjectMaterial verwendest
Schön wäre es ![]()
for(new es; es < 100; es++){
SetObjectMaterial(boden[es], 0, 19377, "all_walls", "la_carp3", 0);
}
boden[0] = CreateObject(3095, 1893.06, -1679.92, 17.45, 0.00, 0.00, 0.00);
boden[1] = CreateObject(3095, 1884.84, -1679.92, 17.45, 0.00, 0.00, 0.00);
boden[2] = CreateObject(3095, 1884.93, -1679.91, 21.13, 0.00, 0.00, 0.00);
boden[3] = CreateObject(3095, 1893.82, -1675.72, 21.13, 0.00, 0.00, 0.00);
boden[4] = CreateObject(3095, 1885.32, -1675.92, 17.45, 0.00, 0.00, 0.00);
boden[5] = CreateObject(3095, 1893.93, -1672.34, 23.90, 0.00, 0.00, 0.00);
boden[6] = CreateObject(3095, 1884.95, -1672.34, 30.80, 0.00, 0.00, 0.00);
boden[7] = CreateObject(3095, 1901.93, -1681.38, 23.90, 0.00, 0.00, 0.00);
boden[8] = CreateObject(3095, 1902.86, -1688.96, 23.90, 0.00, 0.00, 0.00);
boden[9] = CreateObject(3095, 1893.92, -1688.96, 23.90, 0.00, 0.00, 0.00);
boden[10] = CreateObject(3095, 1884.95, -1688.96, 23.90, 0.00, 0.00, 0.00);
boden[11] = CreateObject(3095, 1884.95, -1681.14, 23.90, 0.00, 0.00, 0.00);
boden[12] = CreateObject(3095, 1893.93, -1675.74, 23.90, 0.00, 0.00, 0.00);
boden[13] = CreateObject(3095, 1893.92, -1688.76, 23.90, 0.00, 0.00, 0.00);
boden[14] = CreateObject(3095, 1902.96, -1681.19, 23.90, 0.00, 0.00, 0.00);
boden[15] = CreateObject(3095, 1884.95, -1672.34, 23.90, 0.00, 0.00, 0.00);
boden[16] = CreateObject(3095, 1884.95, -1681.14, 30.80, 0.00, 0.00, 0.00);
boden[17] = CreateObject(3095, 1902.86, -1688.96, 30.80, 0.00, 0.00, 0.00);
boden[18] = CreateObject(3095, 1884.95, -1688.96, 36.02, 0.00, 0.00, 0.00);
boden[19] = CreateObject(3095, 1893.92, -1688.86, 30.80, 0.00, 0.00, 0.00);
boden[20] = CreateObject(3095, 1893.93, -1672.34, 30.80, 0.00, 0.00, 0.00);
boden[21] = CreateObject(3095, 1893.93, -1675.56, 30.80, 0.00, 0.00, 0.00);
boden[22] = CreateObject(3095, 1902.86, -1672.34, 30.80, 0.00, 0.00, 0.00);
boden[23] = CreateObject(3095, 1902.96, -1681.19, 30.80, 0.00, 0.00, 0.00);
boden[24] = CreateObject(3095, 1893.92, -1688.76, 30.80, 0.00, 0.00, 0.00);
boden[25] = CreateObject(3095, 1884.95, -1688.96, 30.80, 0.00, 0.00, 0.00);
boden[26] = CreateObject(3095, 1884.95, -1681.14, 36.02, 0.00, 0.00, 0.00);
boden[27] = CreateObject(3095, 1884.95, -1672.34, 36.02, 0.00, 0.00, 0.00);
boden[28] = CreateObject(3095, 1893.93, -1672.34, 36.02, 0.00, 0.00, 0.00);
boden[29] = CreateObject(3095, 1902.86, -1672.34, 36.02, 0.00, 0.00, 0.00);
boden[30] = CreateObject(3095, 1902.96, -1681.19, 36.02, 0.00, 0.00, 0.00);
boden[31] = CreateObject(3095, 1902.86, -1688.96, 36.02, 0.00, 0.00, 0.00);
boden[32] = CreateObject(3095, 1893.92, -1688.94, 36.02, 0.00, 0.00, 0.00);
boden[33] = CreateObject(3095, 1893.92, -1688.76, 30.80, 0.00, 0.00, 0.00);
boden[34] = CreateObject(3095, 1893.96, -1680.87, 36.02, 0.00, 0.00, 0.00);
boden[35] = CreateObject(3095, 1902.75, -1672.36, 21.13, 0.00, 0.00, 0.00);
boden[36] = CreateObject(3095, 1901.93, -1681.38, 30.80, 0.00, 0.00, 0.00);
boden[37] = CreateObject(3095, 1876.32, -1688.92, 17.45, 0.00, 0.00, 0.00);
boden[38] = CreateObject(3095, 1876.28, -1679.95, 21.13, 0.00, 0.00, 0.00);
boden[39] = CreateObject(3095, 1876.26, -1672.36, 21.13, 0.00, 0.00, 0.00);
boden[40] = CreateObject(3095, 1885.08, -1672.36, 21.13, 0.00, 0.00, 0.00);
boden[41] = CreateObject(3095, 1893.85, -1672.36, 21.13, 0.00, 0.00, 0.00);
boden[42] = CreateObject(3095, 1902.86, -1672.34, 23.90, 0.00, 0.00, 0.00);
boden[43] = CreateObject(3095, 1911.42, -1672.36, 21.13, 0.00, 0.00, 0.00);
boden[44] = CreateObject(3095, 1919.02, -1672.36, 21.13, 0.00, 0.00, 0.00);
boden[45] = CreateObject(3095, 1885.08, -1688.90, 21.13, 0.00, 0.00, 0.00);
boden[46] = CreateObject(3095, 1894.04, -1688.90, 21.13, 0.00, 0.00, 0.00);
boden[47] = CreateObject(3095, 1903.04, -1688.90, 21.13, 0.00, 0.00, 0.00);
boden[48] = CreateObject(3095, 1912.00, -1688.90, 21.13, 0.00, 0.00, 0.00);
boden[49] = CreateObject(3095, 1901.94, -1681.11, 21.13, 0.00, 0.00, 0.00);
boden[50] = CreateObject(3095, 1910.91, -1681.11, 21.13, 0.00, 0.00, 0.00);
boden[51] = CreateObject(3095, 1919.02, -1681.37, 21.13, 0.00, 0.00, 0.00);
boden[52] = CreateObject(3095, 1919.02, -1688.88, 21.13, 0.00, 0.00, 0.00);
boden[53] = CreateObject(3095, 1876.08, -1688.96, 13.36, 0.00, 0.00, 0.00);
boden[54] = CreateObject(3095, 1867.35, -1672.36, 18.51, 0.00, 0.00, 0.00);
boden[55] = CreateObject(3095, 1858.38, -1672.34, 18.51, 0.00, 0.00, 0.00);
boden[56] = CreateObject(3095, 1850.53, -1672.34, 18.51, 0.00, 0.00, 0.00);
boden[57] = CreateObject(3095, 1850.53, -1681.35, 18.51, 0.00, 0.00, 0.00);
boden[58] = CreateObject(3095, 1858.37, -1681.35, 18.51, 0.00, 0.00, 0.00);
boden[59] = CreateObject(3095, 1867.35, -1681.35, 18.51, 0.00, 0.00, 0.00);
boden[60] = CreateObject(3095, 1867.35, -1689.13, 18.51, 0.00, 0.00, 0.00);
boden[61] = CreateObject(3095, 1858.37, -1689.13, 18.51, 0.00, 0.00, 0.00);
boden[62] = CreateObject(3095, 1850.53, -1689.13, 18.51, 0.00, 0.00, 0.00);
boden[63] = CreateObject(3095, 1876.28, -1688.90, 21.13, 0.00, 0.00, 0.00);
boden[64] = CreateObject(3095, 1885.07, -1688.94, 13.36, 0.00, 0.00, 0.00);
boden[65] = CreateObject(3095, 1894.05, -1688.94, 13.36, 0.00, 0.00, 0.00);
boden[66] = CreateObject(3095, 1902.91, -1688.94, 13.36, 0.00, 0.00, 0.00);
boden[67] = CreateObject(3095, 1911.79, -1688.94, 13.36, 0.00, 0.00, 0.00);
boden[68] = CreateObject(3095, 1919.12, -1688.94, 13.36, 0.00, 0.00, 0.00);
boden[69] = CreateObject(3095, 1876.08, -1680.10, 13.36, 0.00, 0.00, 0.00);
boden[70] = CreateObject(3095, 1885.08, -1680.10, 13.36, 0.00, 0.00, 0.00);
boden[71] = CreateObject(3095, 1894.06, -1680.12, 13.36, 0.00, 0.00, 0.00);
boden[72] = CreateObject(3095, 1902.95, -1680.10, 13.36, 0.00, 0.00, 0.00);
boden[73] = CreateObject(3095, 1911.90, -1680.10, 13.36, 0.00, 0.00, 0.00);
boden[74] = CreateObject(3095, 1919.12, -1680.10, 13.36, 0.00, 0.00, 0.00);
boden[75] = CreateObject(3095, 1876.06, -1672.10, 13.36, 0.00, 0.00, 0.00);
boden[76] = CreateObject(3095, 1885.02, -1672.10, 13.36, 0.00, 0.00, 0.00);
boden[77] = CreateObject(3095, 1894.00, -1672.10, 13.36, 0.00, 0.00, 0.00);
boden[78] = CreateObject(3095, 1902.97, -1672.10, 13.36, 0.00, 0.00, 0.00);
boden[79] = CreateObject(3095, 1911.85, -1672.10, 13.36, 0.00, 0.00, 0.00);
boden[80] = CreateObject(3095, 1919.29, -1672.10, 13.36, 0.00, 0.00, 0.00);
boden[81] = CreateObject(3095, 1865.58, -1734.97, 18.43, 0.00, 0.00, 0.00);
boden[82] = CreateObject(3095, 1856.61, -1734.97, 18.43, 0.00, 0.00, 0.00);
boden[83] = CreateObject(3095, 1848.89, -1734.97, 18.43, 0.00, 0.00, 0.00);
boden[84] = CreateObject(3095, 1848.76, -1733.05, 18.43, 0.00, 0.00, 0.00);
boden[85] = CreateObject(3095, 1857.76, -1733.05, 18.43, 0.00, 0.00, 0.00);
boden[86] = CreateObject(3095, 1865.61, -1733.05, 18.43, 0.00, 0.00, 0.00);
boden[87] = CreateObject(3095, 1884.09, -1688.92, 17.45, 0.00, 0.00, 0.00);
boden[88] = CreateObject(3095, 1893.06, -1688.92, 17.45, 0.00, 0.00, 0.00);
boden[89] = CreateObject(3095, 1902.05, -1688.92, 17.45, 0.00, 0.00, 0.00);
boden[90] = CreateObject(3095, 1911.00, -1688.92, 17.45, 0.00, 0.00, 0.00);
boden[91] = CreateObject(3095, 1919.22, -1688.92, 17.45, 0.00, 0.00, 0.00);
boden[92] = CreateObject(3095, 1902.05, -1679.92, 17.45, 0.00, 0.00, 0.00);
boden[93] = CreateObject(3095, 1911.00, -1679.92, 17.45, 0.00, 0.00, 0.00);
boden[94] = CreateObject(3095, 1919.22, -1679.92, 17.45, 0.00, 0.00, 0.00);
boden[95] = CreateObject(3095, 1893.06, -1672.36, 17.45, 0.00, 0.00, 0.00);
boden[96] = CreateObject(3095, 1902.05, -1672.36, 17.45, 0.00, 0.00, 0.00);
boden[97] = CreateObject(3095, 1911.00, -1672.36, 17.45, 0.00, 0.00, 0.00);
boden[98] = CreateObject(3095, 1919.22, -1672.36, 17.45, 0.00, 0.00, 0.00);
boden[99] = CreateObject(3095, 1876.32, -1679.92, 17.45, 0.00, 0.00, 0.00);
boden[100] = CreateObject(3095, 1876.32, -1672.07, 17.45, 0.00, 0.00, 0.00);
kannst ja mal testen das ist dort wo das alhambra ist und bei mehr als 100 geht nix mehr D:
for(new o; o < 15; o++){
SetDynamicObjectMaterial(stein[o], 0, 4006, "lanblokd", "citywall1", 0);
}
stein[0] = CreateObject(18762, 1870.81, -1689.92, 11.41, 0.00, 0.00, 0.00);
stein[1] = CreateObject(18762, 1869.95, -1689.92, 11.41, 0.00, 0.00, 0.00);
stein[2] = CreateObject(18762, 1870.85, -1671.23, 11.41, 0.00, 0.00, 0.00);
stein[3] = CreateObject(18762, 1869.94, -1671.23, 11.41, 0.00, 0.00, 0.00);
stein[4] = CreateObject(18762, 1881.74, -1694.15, 12.53, 0.00, 0.00, 0.00);
stein[5] = CreateObject(18762, 1881.74, -1695.14, 12.53, 0.00, 0.00, 0.00);
stein[6] = CreateObject(18762, 1881.74, -1696.08, 12.53, 0.00, 0.00, 0.00);
stein[7] = CreateObject(18762, 1881.74, -1697.04, 12.53, 0.00, 0.00, 0.00);
stein[8] = CreateObject(18762, 1888.77, -1694.06, 12.53, 0.00, 0.00, 0.00);
stein[9] = CreateObject(18762, 1888.77, -1695.03, 12.53, 0.00, 0.00, 0.00);
stein[10] = CreateObject(18762, 1888.77, -1696.01, 12.53, 0.00, 0.00, 0.00);
stein[11] = CreateObject(18762, 1888.77, -1696.99, 12.53, 0.00, 0.00, 0.00);
stein[12] = CreateObject(18762, 1870.81, -1684.82, 11.41, 0.00, 0.00, 0.00);
stein[13] = CreateObject(18762, 1869.95, -1684.82, 11.41, 0.00, 0.00, 0.00);
stein[14] = CreateObject(18762, 1870.85, -1676.21, 11.41, 0.00, 0.00, 0.00);
stein[15] = CreateObject(18762, 1869.94, -1676.21, 11.41, 0.00, 0.00, 0.00);
RemoveBuildingForPlayer(playerid, 5544, 1873.7422, -1682.4766, 34.7969, 0.25);
RemoveBuildingForPlayer(playerid, 1524, 1837.6641, -1640.3828, 13.7578, 0.25);
RemoveBuildingForPlayer(playerid, 620, 1855.7188, -1741.5391, 10.8047, 0.25);
RemoveBuildingForPlayer(playerid, 620, 1879.5078, -1741.4844, 10.8047, 0.25);
RemoveBuildingForPlayer(playerid, 620, 1908.2188, -1741.4844, 10.8047, 0.25);
RemoveBuildingForPlayer(playerid, 712, 1929.5781, -1736.9063, 21.3906, 0.25);
RemoveBuildingForPlayer(playerid, 620, 1931.0391, -1726.3281, 10.8047, 0.25);
RemoveBuildingForPlayer(playerid, 620, 1832.3828, -1694.3125, 9.7188, 0.25);
RemoveBuildingForPlayer(playerid, 1537, 1837.4375, -1683.9688, 12.3047, 0.25);
RemoveBuildingForPlayer(playerid, 1533, 1837.4375, -1683.9531, 12.3047, 0.25);
RemoveBuildingForPlayer(playerid, 1537, 1837.4375, -1686.9844, 12.3125, 0.25);
RemoveBuildingForPlayer(playerid, 620, 1832.8984, -1670.7656, 9.7188, 0.25);
RemoveBuildingForPlayer(playerid, 1533, 1837.4375, -1677.9219, 12.2969, 0.25);
RemoveBuildingForPlayer(playerid, 1537, 1837.4375, -1680.9531, 12.2969, 0.25);
RemoveBuildingForPlayer(playerid, 1533, 1837.4375, -1680.9375, 12.2969, 0.25);
RemoveBuildingForPlayer(playerid, 5408, 1873.7422, -1682.4766, 34.7969, 0.25);
RemoveBuildingForPlayer(playerid, 620, 1931.0391, -1702.2891, 10.8047, 0.25);
RemoveBuildingForPlayer(playerid, 712, 1929.5781, -1694.4609, 21.3906, 0.25);
RemoveBuildingForPlayer(playerid, 620, 1931.0391, -1667.0313, 10.8047, 0.25);
RemoveBuildingForPlayer(playerid, 620, 1931.0391, -1637.8984, 10.8047, 0.25);
RemoveBuildingForPlayer(playerid, 620, 1855.7188, -1623.2813, 10.8047, 0.25);
RemoveBuildingForPlayer(playerid, 620, 1879.5078, -1623.1016, 10.8047, 0.25);
RemoveBuildingForPlayer(playerid, 620, 1908.2188, -1622.9844, 10.8047, 0.25);
RemoveBuildingForPlayer(playerid, 712, 1929.5781, -1627.6250, 21.3906, 0.25);
Ihr wisst wohl auch das ich
SetObjectMaterial meine und nicht
CreateObject und ich geh gerade stark davon aus das es ein limit von samp ist
da ich nun ein testserver von sponsoring4all bekommen habe und dort ist der gleiche spaß
das sich das Material der Objekte nicht mehr ändern lässt