Wie mache ich das Object unsichtbar????
Mit [wiki]SetObjectMaterial[/wiki], dort bei der Farbe einfach folgendes beachten, dass das ARGB ist.
Sprich 0x00FFFFFF würde den Alpha Kanal auf transparent setzen, somit wäre es nicht mehr zu sehen ![]()
Wie mache ich das Object unsichtbar????
Mit [wiki]SetObjectMaterial[/wiki], dort bei der Farbe einfach folgendes beachten, dass das ARGB ist.
Sprich 0x00FFFFFF würde den Alpha Kanal auf transparent setzen, somit wäre es nicht mehr zu sehen ![]()
Verstehe das nicht so ganz was du hier suchst.
Ich meine du stellst keine Konkrete Frage o.ä.
Mit der Funktion schreibst du etwas auf ein Objekt.
Die Parameter sind:
(objectid, text[], materialindex = 0, materialsize = OBJECT_MATERIAL_SIZE_256x128, fontface[] = "Arial", fontsize = 24, bold = 1, fontcolor = 0xFFFFFFFF, backcolor = 0, textalignment = 0)
Mit textalignment kannst du ihn links, mittig oder rechts positionieren.
Mit Absätzen wie ~n~ kannst du ihn evtl auch hoch und runter setzen.
Dann kannst auch evtl einfach das Objekt verschieben, je nachdem was du machen willst.
Das hier ist ein Forum, bitte spezifische Fragen, mit so einem Wisch Wasch kann man dir schlecht helfen ![]()
PS: Hier nochmal die Wiki page auf Deutsch: http://wiki.sa-mp.com/wiki/SetObjectMaterialText_DE
Fahrzeuge Attacken
Bitte keine Fahrzeuge angreifen hahaha ![]()
und was wenn ich jetzt ein drittes reinballern will? dann einfach switch(random(3)) und bei case 2 : bsp. givemoney wieder?
Richtig.
und ja alles soll die Chance 50% sein
Naja, dann für die Drehbewegung einfach MoveObject nutzen und für die chance:
switch(random(2))
{
case 0: SetPlayerHealth(playerid, 0);
case 1: GivePlayerMoney(playerid, 100000);
}
Natürlich nicht einfach so GivePlayerMoney verwenden, sondern deine eigene Funktion ![]()
Wie kann ich ein "Glücksrad" machen?
Inwiefern soll das denn angezeigt werden?
Als Objekt oder als TextDraw?
Hast du das Objekt bereits erstellt?
also wenn jemand /drehen schreibt soll entweder 100k als gewinn kommen oder sethp 0.
Soll er dazu in der Nähe sein + in der Nähe bleiben?
Wie soll die Chancen sein, dass das eine kommt oder das andere? (50/50?)
Verstehe nicht, was das mit meinem Include zu tun hat, aber okay...
Wie frage ich ab ob der Spieler in einem der Fahrschulautos ist?
Zum Beispiel so:
stock isPlayerInFSCar(playerid)
{
if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return 0;
for(new i; i<sizeof(Fahrschulauto); i++)
{
if(IsPlayerInVehicle(playerid, Fahrschulauto[i])) return 1;
}
return 0;
}
Und dann einfach sowas:
public OnPlayerEnterCheckpoint(playerid)
{
switch(IsInCheckpoint(playerid,FS_Points<FAHRSCHUL_ROUTE>))
{
case FINAL_CHECKPOINT:
{
if(isPlayerInFSCar(playerid))
{
SendClientMessage(playerid,0xFF0000FF, "Du hast den Auto-Führerschein bestanden! ");
SetVehicleToRespawn(GetPlayerVehicleID(playerid));
ClearCheckpoint<FAHRSCHUL_ROUTE>(playerid);
}
else SendClientMessage(playerid,-1,"* Du bist in keinem FS Auto!");
}
case NORMAL_CHECKPOINT:
{
if(isPlayerInFSCar(playerid))
{
NextCheckpoint(playerid, FS_Points<FAHRSCHUL_ROUTE>, 5.0);
}
else SendClientMessage(playerid,-1,"* Du bist in keinem FS Auto!");
}
}
return 1;
}
Alles anzeigen
//Edit:
In der Funktion sollte schon sicher gestellt werden, dass der Spieler auch wirklich der Fahrer ist ![]()
//Edit:
Also die Fehler kommen, weil beim case ein Klammerblock hin muss (in diesem speziellem Fall) um das NextCheckpoint ![]()
Aber ist doch schnell für meinen Code angepasst ![]()
Musst nur die Koordinaten von den Punkten in das struct packen und fertig ![]()
Dein Code geht glaube ich nicht, weil du da 2x die selben Koordinaten irgendwie hast ![]()
Sicher, dass du dann auch das richtige Pawno öffenst? ![]()
Lass den Code mal so wie du ihn hattest.
Und dann update mal deine SA:MP Includes ![]()
Stimmt doch überein? warum meckert der da rum
In welcher Zeile ist das denn? ![]()
wie kann ich bsp. /lsmarker ID machen und die Spielerid kriegt dann einen Marker wo ich das gesetzt habe.
Naja, einfach zum Beispiel so:
Habe es nach dem Samp:wiki gemacht aber verstehe es so nicht, komisch
Hatte da mal zur Vereinfachung eine Include geschrieben gehabt: [Include] (Race)-Checkpoint Routen Ersteller
Kannst du dir ja mal ansehen, da ist das dann ganz leicht zu managen ![]()
Erstellst einfach deine Route:
enum
{
FAHRSCHUL_ROUTE
};
struct ~FS_Points~
{
{1108.6554,-1743.2837,12.9968},
{1181.7915,-1732.3220,12.9952}
};
#Dann einfach so starten, für normale Checkpoints
StartCheckpoint<FAHRSCHUL_ROUTE>(playerid, START_CHECKPOINT, FS_Points, 4.0);
public OnPlayerEnterCheckpoint(playerid)
{
switch(IsInCheckpoint(playerid,FS_Points<FAHRSCHUL_ROUTE>))
{
case FINAL_CHECKPOINT:
{
SendClientMessage(playerid,0xFF0000FF,!"* Finalen Checkpoint von FAHRSCHUL_ROUTE erreicht!");
ClearCheckpoint<FAHRSCHUL_ROUTE>(playerid);
}
case NORMAL_CHECKPOINT: NextCheckpoint(playerid, FS_Points<FAHRSCHUL_ROUTE>, 5.0);
}
return 1;
}
Alles anzeigen
Bisschen Code vom onclick oder so wäre schon schnieke ![]()
Kommt der Server wieder on?
Stellst mir n Server zur Verfügung? ![]()
Wäre da eine Tazer Pistole wie auf vielen anderen Servern nicht sinniger? :o
Jemand ein Plan ?
Das ist nicht so leicht, besonders da wir nicht wissen, wofür du das benötigst.
Theoretisch ist es schon gut möglich das herauszufinden.
Wichtig sind hier Dinge wie:
Du musst ein bisschen Nachdenken über die Anordnung deines Codes.
Es macht wenig Sinn z.B. in jedem Schleifen durchlauf zu prüfen, ob der Spieler sich in einem Auto befindet.
Das reicht, wenn du das 1x am Anfang machst.
Dein Code macht auch keinen Sinn, da du einfach das 1. Fahrzeug löschen wurdest, welches erstellt wurde und nicht das, in welchem du sitzt ![]()
Sinniger wäre sowas:
ocmd:dtc(playerid, params[])
{
if(sInfo[playerid][pLoggedIn] == false)return SendClientMessage(playerid,-1,"Du bist nicht eingeloggt!");
if(sInfo[playerid][pAdmin] == 0)return SendClientMessage(playerid,-1,"Du kannst diesen Befehl nicht nutzen!");
new v = GetPlayerVehicleID(playerid);
if(!v) return SendClientMessage(playerid,-1,"Du sitzt nicht im Fahrzeug!");
for(new i; i<sizeof(erstellteCars); i++)
{
if(erstellteCars[i] == v)
{
DestroyVehicle(erstellteCars[i]);
erstellteCars[i] = INVALID_VEHICLE_ID;
erstellteCar--;
return 1;
}
}
return SendClientMessage(playerid,-1,"Du kannst das Fahrzeug nicht löschen!");
}
Alles anzeigen