Oder könnte man ein Objekt erstellen und den Spieler irgendwie an das Objekt "kleben" anschließend via. MoveObject das Objekt inkl. Spieler bewegen?
Nein, aber du kannst ein Objekt an den Spieler kleben und den Spieler bewegen: Player Movement
Oder könnte man ein Objekt erstellen und den Spieler irgendwie an das Objekt "kleben" anschließend via. MoveObject das Objekt inkl. Spieler bewegen?
Nein, aber du kannst ein Objekt an den Spieler kleben und den Spieler bewegen: Player Movement
danke funktioniert
War es wirklich zu schwer, es aus meinem Beitrag abzulesen? ![]()
symbol already defined: "CreateObject"
Du darfst das ja auch nicht irgendwo in dein Script klatschen...sondern z.B. unter OnGameModeInit ![]()
@Schlaubi:
Musst es so schreiben:
GetPlayerWeaponData(playerid, i, WaffenSave[playerid][waffe][i], WaffenSave[playerid][ammo][i]);
mfg. ![]()
Weil heal ein Float sein muss:
ocmd:heal(playerid,params[])
{
new Float:health,receiverid;
if(sscanf(params,"uf",receiverid,health))return SendClientMessage(playerid,COLOR_RED,"/heal [playerid] [heal]");
SetPlayerHealth(receiverid,health);
return 1;
}
mfg. ![]()
Was ich interessant finde, den Ankauf von Aktien und den Verkauf dieser nach kurzer Zeit
Dieses ich kauf jetzt was und verkaufe es direkt wieder und bin stink reich...funktioniert so nicht...denn wenn, wieso sind wir dann nicht alle stink reich? ![]()
Das soll nur Leute anlocken die doof genug sind Aktien davon zu kaufen und dann zu verkaufen (https://www.bdswiss.com/de/) ist genau sowas.
Die Chance, dass du da verlierst ist natürlich extrem hoch...aber natürlich ist wie Werbung für diese Systeme sehr verlockend, wie Elite-Partner oder sonst was ![]()
Dass man da seine Traumfrau kennen lernt ist genauso wahrscheinlich.
Wenn du Geld mit Aktien verdienen willst, musst du dir den Markt anschauen, dir eine extrem sichere Firma suchen (die mal nicht eben schnell insolvent geht) und dann über Jahre (Jahrzehnte) abwarten ob der Kurs steigt oder fällt, mal eben kurz das schnelle Geld machen wirst du mit solchen Methoden nicht (zu 99.9%).
mfg. ![]()
Nun, wenn du mit cache Funktionen arbeitest, musst du ein neueres MySQL Plugin verwenden.
Sprich anstatt R5, R7 oder so ![]()
Denn erst ab späteren Versionen wird die cache Funktion unterstützt, allerdings kannst du da dann nicht mehr mysql_query in diesem Sinne richtig nutzen.
Also solltest du dein Skript entweder auf das eine oder das andere ausrichten ![]()
mfg. ![]()
Downloade dir mal den nativechecker und poste nochmal den Log ![]()
Dann schau mal beim Laden:
for(new d = 0; d < MAX_TEILE; d++)
{
MyObjects[d] = CreateDynamicObject(BLA.BLA.BLA);
printf("%d",MyObjects[d]); //Dann siehst du welche objektid das ist
break; //was soll das break da?! Damit lädst du nur 1 Objekt
}
Das break mach am besten mal raus..
Sollte dann aber so gehen...wenn nicht, zeig nochmal genau wie du es lädst anstatt "BLABLABLA"..
Musst den Code so schreiben:
for(new d; d < MAX_TEILE; d++)
{
if(!MyObjects[d]) continue;
DestroyDynamicObject(MyObjects[d]);
}
mfg. ![]()
Alternativ kannst du, wenn du die Animation startest, alle Fahrzeuge für den Spieler abschließen, dann hat sich das Problem komplett erledigt.
Nein, da immer noch eine Animation ausgeführt wird, wenn man G drückt.
Dein erster Vorschlag ist die einzige Möglichkeit, da selbst das Freezen der Animation selbst nicht hilft ![]()
Zeig mal deine ApplyAnimation Funktion ![]()
Das sollte dir ein wenig helfen: http://www.investorsinside.de/…del-mit-binaren-optionen/
PS: Ich rate dennoch davon ab ![]()
mfg. ![]()
1. Pastebin ist pflicht.
2.
enum CHARACTER_INFO{
bool:_inUse = false,
Mach das = false weg...damit machst du nicht das, was du denkst.
Die Variable wird so oder so mit 0 in Pawn initialisiert ![]()
mfg. ![]()
Wenn man schon angibt, etwas übersichtlicher zu gestalten, dann sollte man es auch durchziehen und nicht eine Zeile kritisieren und den Rest da hin klatschen.
Was redest du hier von kritisieren? ![]()
Ich habe ihn lediglich auf die Funktion hingewiesen.
Bitte leg einfach deine Überheblichkeit und auch deine Arroganz ab - ist ja schlimm
Na da spricht ja der richtige ![]()
fakt ist aber das der Rest des Codes ein Haufen irgendwas ist.
Welcher Rest? ![]()
Es gibt keinen Rest, das was ich danach geschrieben habe, bezog sich nur auf die Geschwindigkeit.
das ist weder übersichtlich noch hilft es jemanden, der verstehen will was da gerade vor sicht geht.
Habe ich mir auch nicht als oberste Priorität gesetzt.
Meinen Code finde ich eigentlich relativ übersichtlich, zumindest übersichtlicher als den Code von manch anderen Leuten ![]()
Übersichtlicher wäre es wenn untereinander und nicht alles hintereinander gequescht.
Ich habe von meinem Beitrag davor gesprochen und natürlich ist dist = VectorSize(cx-x, cy-y, cz-z); übersichtlicher als dist = floatsqroot((cx-x)*(cx-x) + (cy-y)*(cy-y) + (cz-z)*(cz-z));
Ich habe die Funktion absichtlich nicht verwendet, da sie nicht mit den früheren Versionen kompatibel ist
Wieso entwirfst du denn Funktionen für alte SA:MP Versionen. Macht irgendwie keinen Sinn...da bald eh alle 0.3.7 nutzen werden...oder ~95% aller Server eh 0.3z momentan nutzen.
Zitat von »Kaliber«
Das hier ist nicht der Code-Optimierungs Thread
Das war ja auch weniger Optimiert, eher hätte es die schreibweise vereinfacht bzw den Code übersichtlicher und kürzer gemacht
(Das schneller wäre nur ein positiver Nebeneffekt.)
Wenn wir schon dabei sind:
mfg. ![]()
//Edit: Da war n TAG Mismatch drinnen..
Lass das Limit 1 trotzdem mal drinnen und mach halt mal n print-Debug was er dir so für ne adresse und port ausgibt...etc
Mit der Funktion VectorSize kannst du das schneller berechnen, quasi anstatt:
dist = floatsqroot((cx-x)*(cx-x) + (cy-y)*(cy-y) + (cz-z)*(cz-z));
Kannst du einfach folgendes schreiben:
dist = VectorSize(cx-x, cy-y, cz-z);
if(dist > radius) return 0;
return 1;
Ein
return (dist <= radius);
reicht ![]()
Nette Funktion, gab es aber glaube ich schonmal hier :3
Dann mach es mal so:
<tbody charset="utf-8">
<?
$query = "SELECT * FROM `server` WHERE `Email`='$mymail' LIMIT 1";
$result = mysql_query($query);
$row = mysql_fetch_object($result); //Schleife braucht man nicht, da nur LIMIT 1
try {
$squery = new SampQueryAPI($row->serverip, strval($row->serverport));
$sInfo = $squery->GetInfo( );
$sServerRules = $squery->GetRules( );
$sBasicPlayer = $squery->GetPlayers( );
$sTotalPlayers = $squery->GetDetailedPlayers( );
$squery->Close( );
$string = "<tr>";
$string .= "<th>".$sInfo['hostname']."></th>";
$string .= "<th>".$sInfo['players']." / ".$sInfo['maxplayers']."</th>";
$string .= '<th style="color:green"><strong>Online</strong></th>';
echo $string;
}
catch (QueryServerException $pError)
{
echo '<tr><th style="color:red"><strong>Offline</strong></th></tr>';
}
?>
</tbody>
Alles anzeigen