Creating a rotating portalgun: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
No edit summary
No edit summary
Line 3: Line 3:
So, we are going to create rotating stand with portalgun shooting portals.
So, we are going to create rotating stand with portalgun shooting portals.
<br>[[Image:Warning.png]]  Warnning: Probably, you will see shadow of stand cover underground. Somebody know how to fix it?
<br>[[Image:Warning.png]]  Warnning: Probably, you will see shadow of stand cover underground. Somebody know how to fix it?
<br>[http://myfreefilehosting.com/f/c28a01c6bb_0.1MB Map example download]


==Prepare models ==
==Prepare models ==

Revision as of 07:15, 6 January 2008

Introduction

Width:64

So, we are going to create rotating stand with portalgun shooting portals.
Warning.png Warnning: Probably, you will see shadow of stand cover underground. Somebody know how to fix it?
Map example download

Prepare models

You will need:

prop_dynamic, world model: models/props/pedestal_base_reference.mdl, name: stand_bottom_model
prop_dynamic, world model: models/props/pedestal_center_reference.mdl, name: stand_top_model

Just create and name them, we will move them after next step

Prepare brushes

Create:

32 to 32 square, height 4, using nodraw texture.

4 to 32 sq, height 55 with nodraw texture too.

Moving

Illustration 1.

Move stand_bottom_model where you want to have the stand, that small doors on it have to be under ground. Then move stand_top_model above stand_bottom_model, as on picture. Center 1st brush, that 32x32, with stand_top_model, Z axis to half of stand_top_model (approximately). And move 2nd brush as on picture.

PortalGun

Create new entity, weapon_portalgun and name it weapon_portalgun. Move it exactly to top of stand_top_model, a front part of portalgun has to be on left when you’re loking on stand_top_model from that part with blue display.

Logic

Make entity logic_timer named timer_stand and set interval to 5 sec. Make sure that initial state is on. Now go to outputs and write:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnTimer stand_func_rotating Start <none> 0.00 No
Io11.png OnTimer stand_func_rotating Stop <none> 3.00 No
Io11.png OnTimer weapon_portalgun FirePortal1 <none> 3.00 No

Select 32x32 brush and tie it to entity func_rotating. Name: stand_func_rotating | Friction: 0 | Max Rotation Speed: 30 | In Flags, unmark Start ON.

Tie 2nd brush to func_door. Name: stand_func_door | Speed: 25 | Move direction: 90 0 0. Create new output:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnFullyOpen stand_bottom_model SetAnimation close 0.00 No


Now, we will make outputs of stand_bottom_model:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnAnimationDone stand_bottom_model SetAnimation inactive 0.00 No


And few outputs for weapon_portalgun:

My Output Target Entity Target Input Parameter Delay Only Once
Io11.png OnPlayerPickup timer_stand Kill 0.00 No
Io11.png OnPlayerPickup stand_top_model SetParent stand_func_door 0.00 No
Io11.png OnPlayerPickup stand_func_door Open 0.80 No

Parents and the Hole

All moved, just for illustration of hole.

Now, just set parent of weapon_portalgun and stand_top_model to stand_func_rotating. When your done, make hole under stand_bottom_models overground part.

End

You may create prop_static with model of models/props/autoportal_frame/autoportal_frame.mdl for framing autofired portals, just move them to wall and rotate.