Be the King of my Hill


(nUllSkillZ) #21

Sorry, I haven’t understood.
What do you mean with

… open up as opposed to out.

Do you mean a door that opens up and down?
Like that one in battery.
A hatch.


(Boleth) #22

lol
Sorry I just checked my post over and I would have thought the exact same thing as you, I got ahead of myself in the post referring to Stargate, I’ll correct it now.
But yes I meant a hatch, Ive managed to make the door pivot through the middle so that it “spins” but alas still no hatch.


(MadJack) #23

huh… If I understand what you mean I think have I have the solution for you.

If what you want to have a hatch/door that always open on the same side meaning it’ll open toward you if you’re in front of it or open away from you if you’re behind it, then you want something like that:

First make it like you would make any other rotating door, then in the door’s entity window do this:

Click on Force and enter “degrees” as a key and the degrees you want the door to face when completely opened. You might have to click on REVERSE too but I can’t remember. Mine is selected but the door is not part of a team… Can’t remember why I selected it…

So by entering degrees 30 the door would open until it faces 30 degrees, degrees 90 would open as any normal door.

Now, make sure there’s an origin brush with the func_door_rotating and that y_axis is toggled too in the entity window.

HTH


(Boleth) #24

Hmmmm no one seems to understand me. Which means it must be me not explaining very well.

1)A door that opens up instead of out

2)you know the way a bird flaps its wings, thats the way I want my door to open, the same direction aswell, up and down.

3)Imagine a submarine, to get to the top of the submarine you have to go up through a hatch. thats the sorta rotating door I want.

I think I got it this time :banana: if you still dont know what Im talking about its you guys, lol


(Mr_Tickles) #25

I have the post for you my friend…

http://www.splashdamage.com/index.php?name=pnPHPbb2&file=viewtopic&p=57943&highlight=#57943


(MadJack) #26

Boleth, it’s exactly what I told you. But it’s up instead of front/back whatever :slight_smile:

Do as I explained above. Make the func_door_rotating with an origin brush, enter the keys I gave you and it should work. if you can’t make it work PM me I’ll go into more details.


(nUllSkillZ) #27

If you have created a “func_door_rotating” you can select the rotating axis.
Default is z.
But you can also choose y or x.


(Boleth) #28

It works!!!
:banana:
Thanks for the help guys, all I had to do was switch the axis to Y, it hit me when I thought about what null said about Z being the default axis, I realised what was going on. lol even though null said what was going on I still didnt get it. Thanks to everyone for the info!
I would have given up without you guys, lol.
thanks

edit Gave appropriate credit to Null, :smiley:


(MadJack) #29

6 posts before this one :stuck_out_tongue: lol

Read carefully next time :stuck_out_tongue: :wink:


(Boleth) #30

Sorry man
people were saying stuff about y axis and I was just wondering what they were talking about, I’ll make sure I pay more attention and ask questions more thoroughtly next time.
next time
How do you move the Z scale up and down?
listening attentively
:smiley:
hehe


(Boleth) #31

Also, er, whats the command to remove the HUD?


(MadJack) #32

/cg_draw2D 0 but the gun will still be drawn.
/cg_drawgun 0 will remove it.

Use the same command with 1 to put it back on.


(Boleth) #33

Which one would you guys prefer? I cant make my mind up about which looks best, the second one is what I originally had but its a little harsh on the eyes. But I think it suits the map better, but the first one doesnt suit the map as much but is much easier on the eyes. :???:


While I was at it I thought I would take a couple more


And this is where the flag is going to be placed, you can see it in the distance on the above shots, heres a good view of the area.

what you think?? :moo:


(Boleth) #34

Dont mean to spam, but I have another problem :angry:
Ive just been reading a tutorial on adding a checkpoint, I got the script_multiplayer entity in the map but when I right click and go to the “Team” directory it doesnt display team_WOLF_checkpoint. Neither is there an info_player_start.

anyone know why? :banghead: :banghead: :banghead:


(MadJack) #35

AFAIK, there’s no info_player_start in ET. Use info_player_deathmatch instead.

As for the team_wolf_checkpoint not existing 's probably due because your def file is not up to date…

You can add the team_WOLF_checkpoint in your et_entities.def file located in the script/ folder.

That would be what to add.


/*QUAKED team_WOLF_checkpoint (.6 .9 .6) (-16 -16 0) (16 16 128) SPAWNPOINT CP_HOLD AXIS_ONLY ALLIED_ONLY
This is the flagpole players touch to gain control of a checkpoint, usually connected to spawnpoints

It will call specific trigger funtions in the map script for this object.
When allies capture, it will call "allied_capture".
When axis capture, it will call "axis_capture".

 if spawnpoint flag is set, capture will turn on targeted spawnpoints
 for capture team and turn *off* targeted spawnpoints for opposing team

 the CP_HOLD spawnflag is leftover from something unfinished in RTCW, so probably does not do anything

"model"      model to use (will use same animations as flagpole however)
"scriptname" name of script which contains allied_capture and axis_capture triggers
*/

Note that you have to close and restart radiant for the changes to take effect.


(Boleth) #36

Heh, works great
Thanks man, little bit closer to completion now :banana:


(Boleth) #37
{
	spawn
	{
		// Set scenario information

//		print game_manager spawn
		wm_axis_respawntime 10
		wm_allied_respawntime 10

		wm_set_round_timelimit 10

		wm_number_of_objectives 1


		// Set Defending Team for SW Mode
		
		// changed all: "wm_ set_ objective_ status" into wm_set_main_objective

		wm_set_main_objective		1	-1	//initially neither

		// If the round timer expires, no one has won
		// Set the round winner:  0 == AXIS, 1 == ALLIED
		wm_setwinner -1

		accum 1 set -1 //mirrors the state of the the objective
		accum 2 set 30 //axis required time holding flag 
		accum 3 set 30 //allies 
		accum 4 set 1 // tells us when the timer has been switched so we 
					// dont count the first tick (which happens instantly)
	}

	// game manager response to axis taking the flag
	trigger axis_capture_gm
	{
//		print game_manager axis_capture_gm
		wm_set_main_objective		1	0	//axis got it
		trigger game_manager obj_captured
		accum 1 set 0 //mirrors the state of the the objective
		wm_announce "Axis capture the objective!"
	}

	// game manager response to allies taking the flag
	trigger allies_capture_gm
	{
//		print game_manager allies_capture_gm
		wm_set_main_objective		1	1	//allies got it
		trigger game_manager obj_captured
		accum 1 set 1 //mirrors the state of the the objective
		wm_announce "Allies capture the objective!"
	}

	trigger obj_captured
	{
//		print start
		// mark this as a cap, so we don't score instantly on switch
		accum 4 set 1
		// start the timer if this is the first cap. 
		// If this is a switch, this will stop it
		alertentity holdtimer_relay 
		// if this is the first cap we are done
		accum 1 abort_if_equal -1 
		// otherwise restart the timer so partial periods are not counted
		alertentity holdtimer_relay 
//		print end
	}

	trigger clear_skip_flag
	{
//		print clear_skip_flag
		accum 4 set 0
	}

	trigger timer_axis
	{
		// if not our flag, bail
		accum 1 abort_if_not_equal 0 
		// if this is the first tick, bail
		accum 4 abort_if_equal 1 
		// increase our teams score
		accum 2 inc -1
		trigger game_manager axis_time_2
		trigger game_manager axis_time_1min30
		trigger game_manager axis_time_1min
		trigger game_manager axis_time_30sec
		trigger game_manager axis_time_10sec
		alertentity axis_speaker_relay 
//		print inc
		accum 2 abort_if_not_equal 0 // check for win 
		wm_setwinner 0
		wm_endround
	}

	trigger timer_allies
	{
		// if not our flag, bail
		accum 1 abort_if_not_equal 1 
		// if this is the first tick, bail
		accum 4 abort_if_equal 1 
		// increase our teams score
		accum 3 inc -1
		trigger game_manager allies_time_2min
		trigger game_manager allies_time_1min30
		trigger game_manager allies_time_1min
		trigger game_manager allies_time_30sec
		trigger game_manager allies_time_10sec
		alertentity allies_speaker_relay 
//		print inc
		accum 3 abort_if_not_equal 0 // check for win
		wm_setwinner 1
		wm_endround
	}

// print status messages as the end of game nears
// if we could print an accum or do math it would be so cool
	trigger axis_time_2min
	{
		accum 2 abort_if_not_equal 12
		wm_announce "Axis have 1 minutes"
	}

	trigger axis_time_1min30
	{
		accum 2 abort_if_not_equal 9
		wm_announce "Axis have 1 minute 30 seconds"
	}

	trigger axis_time_1min
	{
		accum 2 abort_if_not_equal 6 
		wm_announce "Axis have 1 minute"
	}

	trigger axis_time_30sec
	{
		accum 2 abort_if_not_equal 3
		wm_announce "Axis have 30 seconds"
	}

	trigger axis_time_10sec
	{
		accum 2 abort_if_not_equal 1
		wm_announce "Axis have 10 seconds"
	}

	trigger allies_time_2min
	{
		accum 3 abort_if_not_equal 12
		wm_announce "Allies have 2 minutes"
	}

	trigger allies_time_1min30
	{
		accum 3 abort_if_not_equal 9
		wm_announce "Allies have 1 minute 30 seconds"
	}

	trigger allies_time_1min
	{
		accum 3 abort_if_not_equal 6
		wm_announce "Allies have 1 minute"
	}

	trigger allies_time_30sec
	{
		accum 3 abort_if_not_equal 3
		wm_announce "Allies have 30 seconds"
	}

	trigger allies_time_10sec
	{
		accum 3 abort_if_not_equal 1
		wm_announce "Allies have 10 seconds"
	}
}

mainflag
{
	trigger axis_capture
	{
		trigger game_manager axis_capture_gm
	}

	trigger allied_capture
	{
		trigger game_manager allies_capture_gm
	}
}

holdtimer_event_handler
{
	trigger holdtimer_event
	{
//		print holdtimer_event_handler holdtimer_event
		trigger game_manager timer_allies
		trigger game_manager timer_axis
		trigger game_manager clear_skip_flag
	}
}

The scriptname for the flag is “mainflag” can anyone see why this isnt working? :???:
I didnt write this script myself I used the one from the KOTH map. It says you can use the map for your own use as long as you dont sell it so I figured it would be ok.
I dont know much about scripting atm so I dont have a clue what some of this means.
I can take a guess at a majority of it but I wouldnt know what I was doing.
Also I want to add some script for ammo and health cabinets, should I add this before or after the flagpole script? or between the spawn time? Or does it really not matter?
Thanks


(Loffy) #38

Hi!
This is a rather complicated script for a beginner. If I was working on it, I would simplify it. (Initially - I could always make it more complicated later on, once I got it to work properly.)
To make the script more simple, I would remove these:


      trigger game_manager axis_time_2 
      trigger game_manager axis_time_1min30 
      trigger game_manager axis_time_1min 
      trigger game_manager axis_time_30sec 
      trigger game_manager axis_time_10sec 

      trigger game_manager allies_time_2min 
      trigger game_manager allies_time_1min30 
      trigger game_manager allies_time_1min 
      trigger game_manager allies_time_30sec 
      trigger game_manager allies_time_10sec 

And I would remove these:


      alertentity allies_speaker_relay 
      alertentity axis_speaker_relay 

Finally, I’d remove all this too:


   trigger axis_time_2min 
   { 
      accum 2 abort_if_not_equal 12 
      wm_announce "Axis have 1 minutes" 
   } 

   trigger axis_time_1min30 
   { 
      accum 2 abort_if_not_equal 9 
      wm_announce "Axis have 1 minute 30 seconds" 
   } 

   trigger axis_time_1min 
   { 
      accum 2 abort_if_not_equal 6 
      wm_announce "Axis have 1 minute" 
   } 

   trigger axis_time_30sec 
   { 
      accum 2 abort_if_not_equal 3 
      wm_announce "Axis have 30 seconds" 
   } 

   trigger axis_time_10sec 
   { 
      accum 2 abort_if_not_equal 1 
      wm_announce "Axis have 10 seconds" 
   } 

   trigger allies_time_2min 
   { 
      accum 3 abort_if_not_equal 12 
      wm_announce "Allies have 2 minutes" 
   } 

   trigger allies_time_1min30 
   { 
      accum 3 abort_if_not_equal 9 
      wm_announce "Allies have 1 minute 30 seconds" 
   } 

   trigger allies_time_1min 
   { 
      accum 3 abort_if_not_equal 6 
      wm_announce "Allies have 1 minute" 
   } 

   trigger allies_time_30sec 
   { 
      accum 3 abort_if_not_equal 3 
      wm_announce "Allies have 30 seconds" 
   } 

   trigger allies_time_10sec 
   { 
      accum 3 abort_if_not_equal 1 
      wm_announce "Allies have 10 seconds" 
   } 

My overall purpose would be to make the script smaller, to make it easier to spot what is wrong.
Scripting is hard but fun (when it works). Keep trying and come back later. I’ll help you more.
// Loffy


(Boleth) #39

Thanks Loffy,
I’ll remove that stuff and give it a try.
Like I said, it isnt my script I used it from a different map, so I just copy and pasted and hoped for the best :slight_smile:
Thanks again


(Loffy) #40

May the force be with you.
// L.