.| Autor | Beitrag |
|---|---|
|
000 27.03.2002, 11:08 Gnomo |
Hi! |
|
Profil || Suche |
|
001 27.03.2002, 11:49 Rockefeller |
Jein, wenn du dir mal das alte Verhalten von HL anschaust, wirst du merken, dass man zwar erst nach einer gewissen Verzögerung respawnen kann (ca. eine Sekunde würde ich mal schätzen), aber dass der Respawn nach Druck auf Fire ausgelöst wird. Ich hab jetzt grade auch nichts gefunden, wo man die Verzögerung einstellen kann. Aber wenn du den Player automatisch respawnen lassen willst, kommt wohl noch ein bisschen Arbeit auf dich zu. Da sollte es aber auch Tuts zu geben. -- |
|
Profil || Suche |
|
002 27.03.2002, 12:38 RirA |
Ist ganz leicht: if(gpGlobals->time < (m_fDeadTime + 15)) //das hier ist entscheidend |
|
Profil || Suche |
|
003 27.03.2002, 14:11 Gnomo |
Ja hast Recht. Danke euch!! -- |
|
Profil || Suche |
|
004 30.03.2002, 13:10 Gnomo |
Hi! |
|
Profil || Suche |
|
005 30.03.2002, 13:24 RirA |
FUCK! |
|
Profil || Suche |
|
006 30.03.2002, 13:32 Mexil |
*rofl* genau das alles hab ich vor ca. 1 Monat durchgemacht... Wenn du was ins HUD selber schreiben willst, reicht ClientPrint nicht, dafuer muesstest du eine neue Message deklaerieren und Clientside halt ein neues Hud Element. --
VISIT US Move In!
|
|
Profil || Suche |
|
007 30.03.2002, 19:49 R2-D2 |
doch das reicht --®2-D2
Projects:
|
|
Profil || Suche |
|
008 30.03.2002, 20:41 Mexil |
K, jetzt geht's um die Definition des Huds... fuer mich ist ein eine ClientPrintfausgaben noch nicht das Hud, aber muss jeder selber wissen... --
VISIT US Move In!
|
|
Profil || Suche |
|
009 30.03.2002, 21:14 Rockefeller |
Interessant wäre z.B. eine countdown, und dafür bracht man dann wirklich n Hud-Element. -- |
|
Profil || Suche |
|
010 31.03.2002, 10:36 RirA |
Nein, braucht man nicht: if(gpGlobals->time < (m_fDeadTime + 15)) |
|
Profil || Suche |
|
011 31.03.2002, 12:46 TheTinySteini |
Hm, so is schlecht. Denn die Chance, dass gpGlobals->time wirklich == (m_fDeadTime + 2) etc. ist, ist sehr gering. Also besser so: TheTinySteini |
|
Profil || Suche |
|
012 31.03.2002, 12:50 RirA |
Also Tiny, ausnahmsweise, liegst du falsch, denn gpGlobals->time == (m_fDeadTime + 2)) tritt zu 100% ein, denn die Zeit wird ja in diesem Fall immer abgefragt. -- |
|
Profil || Suche |
|
013 31.03.2002, 16:20 Prefect |
Uh oh. Hast du schonmal überlegt, daß Framerates unterschiedlich sein können? Was ist z.B. bei einer Frametime von 0.09 Sekunden. 2 / 0.09 ergibt aber keine konstante Framezahl. D.h. nach 22 Frames ist die Zeit gleich m_fDeadTime + 1.98, nach 23 Frames ist die Zeit dann m_fDeadTime + 2.07. Wer Floats mit == vergleicht hat meistens ein ernsthaftes Problem. cu, Widelands - Gemütliche Aufbaustrategie, Free Software |
|
Profil || Suche |
|
014 31.03.2002, 16:48 TheTinySteini |
Eben. Die Framerates sind ja nicht die bloße Erfindung von 3D-Programmieren, sondern ergeben sich schlicht aus der Zeit, die ein kompletter Berechnungsdurchlauf benötigt, und zwar 3D-Grafik + alles andere drum rum (KI, aber eben auch Respawn-Code). Also kann man nicht davon ausgehen, dass die Funktion tatsächlich jede Millisekunde ausgeführt wird. --TheTinySteini |
|
Profil || Suche |
|
015 31.03.2002, 19:26 RirA |
Ihr mögt ja recht haben, aber probiert es aus, es geht - zumindest bei mir... :-) -- |
|
Profil || Suche |
|
016 02.04.2002, 00:14 TheTinySteini |
Hm... vielleicht denkt da ja auch der Compiler sehr quer, nimmt das +1 als Addition mit nem Integer auf, macht damit m_fDeadtime auch zu nem Int und vergleicht dann mit nem zum Int gecasteten time. Würde net viel Sinn machen und wäre reine Willkür, aber könnte ja sein. --TheTinySteini |
|
Profil || Suche |
|
017 02.04.2002, 00:28 Killing Me Softly |
was haltet ihr davon? Der Horizont vieler Menschen ist ein Kreis mit Radius Null - und das nennen sie ihren Standpunkt. |
|
Profil || Suche |
|
018 02.04.2002, 00:37 RirA |
auch gut :-) -- |
|
Profil || Suche |
|
019 02.04.2002, 02:47 Rockefeller |
Das könnte tatsächlich sein, weil (m_fDeadTime + 1) wird ziemlich sicher auf nen Integer gecastet, obwohl... hmm bin doch etwas unsicher... Aber wenn (m_fDeadTime + 1) zu Integer gecastet würde, dann würde sicherlich auch das gesamte (gpGlobals->time <= (m_fDeadTime + 1)) auf Integer gecastet. Und RirAs Aussage bestätigt das. Und Zufall kann das nicht sein, denn die Wahrscheinlichkeit, dass zwei frag-mich-nich-wieviel-byteige Fließkomma-Variablen tatsächlich gleich sind, ist doch sehr unwahrscheinlich, alleine, wenn man sich mal die verdammt krummen Frame-Times anguckt. -- |
|
Profil || Suche |

