Robdeflop1
Obergangster
|
|
Registrierung: |
13.07.2009, 17:51 |
Script Editor: |
Pawno |
Beiträge: |
197
|
|
Hi
Ich hab ne andere Idee. Ich hab in meinem server ein menu, womit man teleports auswählen kann. Ich hab grad mal versucht die Tore/Objecte auch mit einem Menu auszuwählen, dass sie sich dann bewegen. Aber das hat iwie nicht geklappt :*( Ich war freezed un das tor ist mehrmals gespawnt worden...
So sieht mein script aus:
Zitat: #include <a_samp>
#define COLOR_YELLOW 0xFFFF00AA new y_gate; new Menu:Teleports;
public OnPlayerConnect(playerid) { SendClientMessage(playerid, COLOR_YELLOW, "/Tor um Tore zu öffnen und schließen"); return 1; } public OnPlayerCommandText(playerid, cmdtext[]) {
if (strcmp("/Tor",cmdtext, true, 10)==0) { Teleports = CreateMenu("TELEPORTS",2,200,100,150,100); AddMenuItem(Teleports, 0, "Marine-auf"); AddMenuItem(Teleports, 0, "Marine-zu"); AddMenuItem(Teleports, 0, "Veldenz-auf"); AddMenuItem(Teleports, 0, "Veldenz-zu"); AddMenuItem(Teleports, 0, "Dock-auf"); AddMenuItem(Teleports, 0, "Dock-zu"); ShowMenuForPlayer(Teleports, playerid); TogglePlayerControllable(playerid, 0); return 1; } return 0; }
public OnPlayerSelectedMenuRow(playerid, row) {
new Menu:Current = GetPlayerMenu(playerid);
if (Current == Teleports) { switch(row) {
case 0:{ y_gate = CreateObject(980, -2318.629150, 2386.114258, 1.936819, 0.0000, 0.0000, 56.2500); MoveObject(y_gate,-2318.629150, 2386.114258, 7.311823,4); SendClientMessage(playerid, COLOR_YELLOW,"Tor wird geöffnet!"); } case 1:{ y_gate = CreateObject(980, -2318.629150, 2386.114258, 1.936819, 0.0000, 0.0000, 56.2500); MoveObject(y_gate,-2318.629150, 2386.114258, 1.936819,4); SendClientMessage(playerid, COLOR_YELLOW,"Tor wird geschlossen!"); } case 2:{ SetPlayerPos(playerid,-669.9276,1050.2535,654.2639); TogglePlayerControllable(playerid, 1); SendClientMessageToAll(COLOR_YELLOW, "Ein Depp hat sich zum Stunt1 teleportiert!");} case 3:{ SetPlayerPos(playerid,834.8551,-3007.4299,14.2109); TogglePlayerControllable(playerid, 1); SendClientMessageToAll(COLOR_YELLOW, "Ein Spieler hat sich zu meinem Dorf teleportiert!");} case 4:{ SetPlayerPos(playerid,833.1293,-1800.9092,13.3950); TogglePlayerControllable(playerid, 1); SendClientMessageToAll(COLOR_YELLOW, "Ein Depp hat sich zum Santa Maria Beach teleportiert!");} case 5:{ SetPlayerPos(playerid,-2328.8987,2391.0034,5.7813); TogglePlayerControllable(playerid, 1); SendClientMessageToAll(COLOR_YELLOW, "Ein Spieler hat sich zur Marine Teleportiert!");} } } return 1; }
public OnPlayerExitedMenu(playerid) { new Menu:Current = GetPlayerMenu(playerid); if( Current == Teleports){ TogglePlayerControllable(playerid,1);}
return 1; }
So sieht das aus.
Nur die ersten beiden case haben was mit toren zu tun, die anderen sin noch von den teleports, ich hab das menu einfach kopiert^^
Das script womit ich vorher alles gemacht hab sieht so aus:
Zitat: #include <a_samp>
#pragma tabsize 0 #define COLOR_RED 0xFF0000AA #define COLOR_YELLOW 0xFFFF00AA #define FILTERSCRIPT #if defined FILTERSCRIPT new y_gate;
public OnFilterScriptInit() { y_gate = CreateObject(3816, -2323.615479, 2195.620605, 9.502295, 0.0000, 0.0000, 0.0000);
print("\n--------------------------------------"); print(" Filterscript by Robdeflop"); print("--------------------------------------\n"); return 1; }
public OnFilterScriptExit() { return 1; }
#else
#endif
public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp(cmdtext, "/hangarhoch", true) == 0){ MoveObject(y_gate,-2323.615479, 2195.620605, 20.352274,0.5); SendClientMessage(playerid, COLOR_YELLOW,"Hangar wird hochgefahren!"); return 1; } if (strcmp(cmdtext, "/hangarrunter", true) == 0){ MoveObject(y_gate,-2323.615479, 2195.620605, 9.502295,0.5); SendClientMessage(playerid, COLOR_YELLOW,"Hangar wird gesenkt!"); return 1; } return 0; }
Das war aber immer doof, die befehle einzugeben, hat aber geklappt.
Wie würdet ihr das ins Menu einbauen?
MFG, RoB
|
|