Trigger ... [Erledigt]
Übersicht

![]() |
IronstormErstklassiger Contest-VeranstalterBetreff: Trigger ... [Erledigt] |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi @ all!
Ich habe ein Problem. Ich will es realisieren das ein Spieler an eine Tür läuft und sich dann die Auswahl aktiviert das der Spieler in dieses Haus eintreten kann. Wie kann ich so eine Trigger Zone machen? Ich stehe irgendwie auf dem Schlauch. Habe auch die Suche benutzt aber nichts derartiges gefunden. Aber ich bin auch kein Guru in Suchen ![]() THX for help MFG Blitzmaker |
||
- Zuletzt bearbeitet von Ironstorm am Do, Aug 10, 2006 21:32, insgesamt einmal bearbeitet
![]() |
SchnittlauchUnkrautBetreff: Re: Trigger ... |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wie wäre es wen du einen bereich um die Tür mit Rectcollide oder was man da benutzt, definierst? | ||
Ich wars nicht. |
![]() |
5k41 |
![]() Antworten mit Zitat ![]() |
---|---|---|
man könnte eine surface für alle türen dieser map machen und bei Kollision die position des spielers prüfen und ihn danach in das gewünschte haus setzen!
MfG |
||
Projekte:
For a better World - Gesellschaftsspiel ( 100%) User posted image |
![]() |
Christoph |
![]() Antworten mit Zitat ![]() |
---|---|---|
Vllt auch so
Code: [AUSKLAPPEN] if sx>4 and sx<6 and sy>0 and sy<5 and sz>8 and sz<10 then;Bereich festlegen
;Anzeigen endif sx=X Position des Spielers sy=Y Position des Spielers sz=Z Position des Spielers |
||
![]() |
rctuner |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wieso nicht einfach einen unsichtbaren cube in die map setzten und den auf collision mit dem Spieler prüfen lassen.
Wenn der Spieler den unsichtbaren cube berührt kann man den Spieler doch ganz einfach in das Haus verschieben. |
||
[Y[our Film, Game ]M[akers and more [F]un!
www.Master-Entertainment.de.vu [AMD 6000+ X2 @ 6400+][2GB RAM][NVidia 8800GT 512 MB] |
![]() |
Christoph |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] if sx>4 and sx<6 and sy>0 and sy<5 and sz>8 and sz<10 then;Bereich festlegen
;Anzeigen endif Das hier ist sozusagen ein unsichtbarer Cube |
||
![]() |
IronstormErstklassiger Contest-Veranstalter |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ja gut, das mit der unsichtbaren Cube hab ich auch gedacht, aber wie soll ichs dann überprüfen? Mit Entitycollided(player,type_trigger) hats nicht geklappt, da erkennt er die Kollision nicht.
Mit der Lösung von Christoph könnte es klappen, aber finde ich etwas aufwändig. Ich müsste es dann so machen. Habt ihr sonst noch Ideen? Danke nochmal für eure mühe. MFG Blitzmaker |
||
![]() |
Christoph |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: Mit der Lösung von Christoph könnte es klappen, aber finde ich etwas aufwändig. Ich müsste es dann so machen.
Ist eigendlich die simpelste Lösung. Zitat: Ja gut, das mit der unsichtbaren Cube hab ich auch gedacht, aber wie soll ichs dann überprüfen? Mit Entitycollided(player,type_trigger) hats nicht geklappt, da erkennt er die Kollision nicht.
->Meine Variante IST eine Kollisionsabfrage (!!). Nur lade ich kein Entity und überprüfe auch nicht mit vordefinierten Funktionen ![]() |
||
![]() |
Black Spider |
![]() Antworten mit Zitat ![]() |
---|---|---|
Pivot statt cube nehmen (-> Berechnung) und mit EntityDistance prüfen,
wie nahe der Player dran ist. Das Funktioniert dann sogar in beide richtungen. |
||
Coming soon:
http://img132.imageshack.us/im...im2ab6.gif |
![]() |
Christoph |
![]() Antworten mit Zitat ![]() |
---|---|---|
->Das wäre die "Kugelkollision"smethode | ||
![]() |
Black Spider |
![]() Antworten mit Zitat ![]() |
---|---|---|
würde allerdings bestens funktionieren. Splinter Cell benutzt das gleiche prinzip.
Egal von wo man kommt, wenn man die Tür anguckt (das lässt sich ja mit EntityInView machen), und in einer bestimmten nähe zu ihr ist, erscheint ein Menü, Tür aufbrechen, leise öffnen, öffnen, Schloss knacken, Schloss aufbrechen, Optisches Kabel. Dann wird Sam direkt vor die Tür Positioniert, damit die animation stimmt, und öffnet sie. |
||
Coming soon:
http://img132.imageshack.us/im...im2ab6.gif |
![]() |
IronstormErstklassiger Contest-Veranstalter |
![]() Antworten mit Zitat ![]() |
---|---|---|
Okay Leute, vilen Dank. Ich benutze nun Black Spiders Methode und sie funktioniert bestens.
MFG Blitzmaker |
||
Darren |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Alles, was Blackspider gesagt hat funktioniert im Prinzip. Doch was passiert, wenn du ganz viele Solche Türen hast? Dann zieht das schon ein bisschen an der Performance. Man sollte vlt testen, was schneller ist. o___O | ||
MFG Darren |
![]() |
Black Spider |
![]() Antworten mit Zitat ![]() |
---|---|---|
ganz einfach:
Nur ein Tür-Test-Pivot machen, und ihn zur nächstgelegensten Tür Positionieren: Code: [AUSKLAPPEN] olddist=EntityDistance(Tür(1),player)
i=-1 dist=olddist suche=Tür(1) For kd=0 To Tür_Anzahl dist=EntityDistance(Tür(kd),player) If dist<=olddist Then olddist=dist:suche=Tür(kd) Next Tür_x# = EntityX(suche) Tür_y# = EntityY(suche) Tür_z# = EntityZ(suche) ;--- Pivot dorthin positionieren --- PositionEntity Tür_piv,Tür_x#,Tür_y#,Tür_z# so muss man nicht für jede Tür einen neuen Pivot erstellen und prüfen ob die Camera in seiner nähe ist. |
||
Coming soon:
http://img132.imageshack.us/im...im2ab6.gif |
Penthouse Pauper |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Wenn du ein Haus als ein einziges Mesh nimmst, dann ist Pivot sicherlich am elegantesten. Ansonsten gäbe es natürlich die Möglichkeit die Tür als ein eigenes Mesh zu nehmen und dann spart man sich Pivots... | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group