|
 |
Self... ?! setorigin... |
bolkes
Weichei
Dabei seit: 26.09.2010
Beiträge: 4

|
|
Hallo,
Call of Duty 2
ich suche nun schon seit gut 1 1/2 Wochen nach einer lösung aber irgentwie stehe ich voll auf dem schlauch....
Ich wollte nur in einem Script eine kleinigkeit ändern doch diese kleinigkeit will mein kopf nicht so recht verarbeiten
.
Ich möchte gerne Teleportieren auf meinem Server dies klappt auch wenn ich es als "player setorigin" im script schreibe.... macht sich allerdings immer blöd weil ich dann bevor ich das machen kann meine "List ID" raussuchen muss... nun hatte ich gedacht das ich das teil doch auch so machen kann das es mit self Funktioniert und wenn ich nun z.B. in die Konsole schreibe port_spot1 das er mich (der jenige der es eingegeben hat) weg teleportiert.... klappt aber nich ...
Nun meine Frage :
Wie kann ich Self so definieren das es so Funktioniert wie ich es haben möchte?
Könntet ihr mir ein Bsp. zeigen in dem Self Defeniert ist?
Mein jetztiges Script sieht von Tag zu Tag anderst aus weil ich versuche und versuche das zum laufen zu bringen. Habe auch schon in modwiki viel gefunden aber irgentwie nichts was mich weiter bringt.
Danke für Hilfreiche Antworten.
mfg
*so sieht mein jetztiges aus.
| php: |
1:
|
init(){ Precache(); thread SetupCvars(); thread StartThreads();}PreCache(){ //none}SetupCvars(){ setcvar("jump1",""); setcvar("jump2","");}StartThreads(){ thread CvarChecker();}//THREADS___________________________CvarChecker(){ while(1) { if( getcvar( "jump1" ) != "" ) thread _jump1(); if( getcvar( "jump2" ) != "" ) thread _jump2(); wait .1; }}_jump1(){ self endon ( "disconnect" ); self endon ( "death" ); setcvar("jump1", ""); self setOrigin( (2048.97 , 1976.37 , 352.125) ); self setplayerAngles( (0, -149.474, 0) ); self iprintln("Self Jump Funktioniert nicht!"); }_jump2(){ forcePlayerNum = getcvarint("jump2"); setcvar("jump2", ""); players = getentarray("player", "classname"); for(i = 0; i < players.size; i++) { player = players[i]; thisPlayerNum = player getEntityNumber(); if(thisPlayerNum == forcePlayerNum) // this is the one we're looking for { player setOrigin( (3022.89 , 1938.48 , 119.125) ); player setplayerAngles( (0, -149.474, 0) ); iprintln("Player Jump - Funktioniert"); } }} |
|
__________________ keine
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von bolkes: 26.09.2010 15:45.
|
|
|
|
|
Oi!mel
Turnbeutelvergesser
 
Dabei seit: 29.06.2009
Beiträge: 299

|
|
So ist's doch gleich viel schöner zu lesen:
Code angehängt. Klicke hier zum Ein-/Ausblenden
| code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
|
init()
{
Precache();
thread SetupCvars();
thread StartThreads();
}
PreCache()
{
//none}SetupCvars()
{
setcvar("jump1","");
setcvar("jump2","");
}
StartThreads()
{
thread CvarChecker();
}
//THREADS___________________________
CvarChecker()
{
while(1)
{
if( getcvar( "jump1" ) != "" )
thread _jump1();
if( getcvar( "jump2" ) != "" )
thread _jump2();
wait .1; }
}
_jump1()
{
self endon ( "disconnect" );
self endon ( "death" );
setcvar("jump1", "");
self setOrigin( (2048.97 , 1976.37 , 352.125) );
self setplayerAngles( (0, -149.474, 0) );
self iprintln("Self Jump Funktioniert nicht!");
}
_jump2()
{
forcePlayerNum = getcvarint("jump2");
setcvar("jump2", "");
players = getentarray("player", "classname");
for(i = 0; i < players.size; i++)
{
player = players[i];
thisPlayerNum = player getEntityNumber();
if(thisPlayerNum == forcePlayerNum) // this is the one we're looking for
{
player setOrigin( (3022.89 , 1938.48 , 119.125) );
player setplayerAngles( (0, -149.474, 0) );
iprintln("Player Jump - Funktioniert");
}
}
}
|
|
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Oi!mel: 26.09.2010 17:09.
|
|
|
|
|
|
|
| RE: Self... ?! setorigin... |
 |
Original von bolkes
nun hatte ich gedacht das ich das teil doch auch so machen kann das es mit self Funktioniert und wenn ich nun z.B. in die Konsole schreibe port_spot1 das er mich (der jenige der es eingegeben hat) weg teleportiert.... klappt aber nich ...
Nun meine Frage :
Wie kann ich Self so definieren das es so Funktioniert wie ich es haben möchte?
Ähm, kurz gesagt garnicht.
Das Game kann keine Eingaben von irgendwelchen Spielern verarbeiten, die die in die Console eingeben (das ist dem Server, oder vielmehr dem Script das auf dem Server läuft, schnurz piep egal).
Nur Eingaben von einem Admin, die der über rcon macht, werden vom Server empfangen. Aber da kann das Spiel auch keinerlei Verbindung zu einem Player herstellen. Der Server sieht zwar den rcon Befehl, weiß aber nicht, das es sich dabei um einen aktiven Spieler handelt. Das heißt, ein Admin kann zwar einen Spieler teleportieren, er muss aber die ID wissen, damit er die ID dem Script per rcon mit übergeben kann (und das Script dann weiß, wer gemeint ist).
Das genau ist ja bei dir Momentan der Fall und anders auch nicht möglich.
__________________
Da die Lichtgeschwindigkeit höher ist als die Schallgeschwindigkeit,
hält man so manchen für einen hellen Kopf, bis man ihn reden hört.
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von OLD MAN WITH GUN: 27.09.2010 05:23.
|
|
|
|
|
bolkes
Weichei
Dabei seit: 26.09.2010
Beiträge: 4

|
|
Aber wieso klappt das dann in dem "JumperMod" von Codjumper?
Dort kann der Spieler seine Position Speichern und mit einer bestimmten taste sich zur gespeicherten stelle teleportieren lassen. Dies erfordert dann nur den eintrag das scr_jumperxyz 1 aktiv auf dem server läuft... es muss doch also auch möglich sein das wenn jemand "rcon jump1" eingibt automatisch an die vorgegebene Position gebracht wird. Wie funktioniert das also im Jumper mod?
danke auf alle fälle für die antwort...
mfg
__________________ keine
|
|
|
|
|
|
|
Original von bolkes
Aber wieso klappt das dann in dem "JumperMod" von Codjumper?
Dort kann der Spieler seine Position Speichern und mit einer bestimmten taste sich zur gespeicherten stelle teleportieren lassen.
Genau das ist der Unterschied.
Bei der JumpMod wird nichts von der Console gelesen sondern auf ganz bestimmte Tastenkommandos reagiert (die vom Spiel aus selber schon überwacht werden). Nur aus diesem Grund geht es. Du kannst den Attack-button, den Melee-button und den Use-button abfragen, das wars quasi schon. Das wird vom Spiel erkannt und auch mit dem Server kommuniziert. Das kann dann auch auf dem Server per Script verarbeitet werden (da kann man dann auch erkennen, welcher Spieler das war). Bei der JumpMod wird dann eine dieser gerade ganannten Tasten abgefragt ob diese 2x schnell gedrückt wurde (z.B. Melee-button) und die aktuelle Position des Spielers wird gespeichert. Beim Doppelklick auf eine andere dieser Tasten (z.B. Use-button), wird der Spieler dann wieder an die Position gesetzt die er zuvor mit dem Doppelklick auf den Melee-button gespeichert hat.
__________________
Da die Lichtgeschwindigkeit höher ist als die Schallgeschwindigkeit,
hält man so manchen für einen hellen Kopf, bis man ihn reden hört.
Dieser Beitrag wurde 3 mal editiert, zum letzten Mal von OLD MAN WITH GUN: 27.09.2010 13:36.
|
|
|
|
|
|
|
|
 |
Impressum ||Datenschutzerklärung
|