Making game end


(GTBGranny) #1

Hi, I wonder if anyone can help me.

I am in the process of making my first map and I am having difficulty getting the game to end when one of the teams blows up the radio.

I have incorporated the radio_equipment2 prefab that is available and put it in the map.

I have also included the script that comes with it into my script.

My problem is that when one of the teams blows up the the others radio the game doesn’t end.

The radio dissapears and that’s it.

Here is what I have as a script, I wonder if anyone can see what I am doing wrong.

//=======================================================
forward_flag
{
      spawn 
      {
             accum 0 set 2                            // Who owns flag: 0-Axis, 1-Allied, 2-Nobody
      }
      trigger axis_capture                            // Touched by an Axis player
      {
                   accum 0 abort_if_equal 0           // do Axis own flag?
                   accum 0 trigger_if_equal 1 forward_flag axis_reclaim // Reclaimed from Allies
                   
                   accum 0 set 0                      // Axis own the flag
                   wm_announce "Axis have captured the Forward Flag!"
                   
                   setstate forward_wobj default
      }
      trigger axis_reclaim
      {
                   alertentity forward_wobj           // Switch command map marker
      }
      trigger allied_capture                          // Touched by an allied player
      {
                   accum 0 abort_if_equal 1           // do Allies own flag?
                   
                   accum 0 set 1                      // Allied own the flag
                   wm_announce "Allies have captured the Forward Flag!"
                   
                   setstate forward_wobj default
                   alertentity forward_wobj           // Switch command map marker
      }

}

game_manager
{
	spawn
	{
		wm_axis_respawntime	10
		wm_allied_respawntime	10
		wm_set_round_timelimit	30

		// Stopwatch mode defending team (0=Axis, 1=Allies)
		wm_set_defending_team	0

		// Winner on expiration of round timer (0=Axis, 1=Allies, -1=Nobody)
		wm_setwinner 0

		wait 500
            
            setstate forward_wobj invisible

		setautospawn "Forward Flag" 0
		setautospawn "Forward Flag" 1
	}
}

trigger checkgame_allies
        {
         	wm_setwinner 1
		wait 1500
		wm_endround
        }


trigger checkgame_axis
        {
         	wm_setwinner 0
		wait 1500
		wm_endround
        }
}
radio_equipment_allies
{
        spawn
        {
                wait 50
		constructible_class 3
        }

        death
        {
                wm_announce "Allies have destroyed the radio equipment!"
                trigger gamemanager checkgame_allies

        }
}

radio_equipment_axis
{
        spawn
        {
                wait 50
		constructible_class 3
        }

        death
        {
                wm_announce "Axis have destroyed the radio equipment!"
                trigger gamemanager checkgame_axis

        }
}

// ================================================
allied_cp_open
{
	spawn
	{
		wait 100
		accum 0 set 0			// 0=CP Closed, 1=CP Damaged
		constructible_class 2			// Dyno+Satchel

		trigger self disable_cp_features		// Default charge bar times
		setstate allied_cp_damaged invisible	// Hide damaged CP clipbrush+model
		setstate allied_cp_damaged_model invisible

		wait 1000

		// *----------------------------------- vo ------------------------------------------*
		wm_teamvoiceannounce 1 "allies_hq_compost_construct"
		wm_addteamvoiceannounce 1 "allies_hq_compost_construct"
		// *----------------------------------- vo ------------------------------------------*
	}

	trigger disable_cp_features
	{
		setstate allied_cp_open_model invisible	// Hide Open CP model

		setchargetimefactor 1 soldier 1
		setchargetimefactor 1 lieutenant 1
		setchargetimefactor 1 medic 1
		setchargetimefactor 1 engineer 1
		setchargetimefactor 1 covertops 1

		sethqstatus 1 0			// Landmines team warning message
		disablespeaker speaker_allied_cp		// Disable morse code sound
	}

	trigger enable_cp_features
	{
		setstate allied_cp_open_model default	// Show open CP model

		setchargetimefactor 1 soldier 0.75
		setchargetimefactor 1 lieutenant 0.75
		setchargetimefactor 1 medic 0.75
		setchargetimefactor 1 engineer 0.75
		setchargetimefactor 1 covertops 0.75

		sethqstatus 1 1			// Landmines team warning message
		enablespeaker speaker_allied_cp		// Enable morse code sound
	}

	buildstart final
	{
		setstate allied_cp_closed invisible		// Hide closed CP clipbrush+model
		setstate allied_cp_closed_model invisible
		setstate allied_cp_damaged invisible	// Hide damaged CP clipbrush+model
		setstate allied_cp_damaged_model invisible
	}

	built final
	{
		accum 0 set 1			// Only show the damaged CP model
		trigger self enable_cp_features		// Increase charge bar times

		wm_announce "Allied Command Post constructed. Charge speed increased!"
		// *----------------------------------- vo ------------------------------------------*
		wm_removeteamvoiceannounce 1 "allies_hq_compost_construct"
		wm_teamvoiceannounce 1 "allies_hq_compost_constructed"

		wm_teamvoiceannounce 0 "axis_hq_compost_constructed_allies"
		wm_addteamvoiceannounce 0 "axis_hq_compost_constructed_allies"
		// *----------------------------------- vo ------------------------------------------*
	}

	decayed final
	{
		setstate allied_cp_open_model invisible	// Hide Open CP model
		trigger self show_damaged_cabinet	// Show previous cabinet state
		trigger self show_closed_cabinet
	}

	death
	{
		trigger self show_damaged_cabinet	// Show damaged CP model
		trigger self disable_cp_features		// Default charge bar times

		wm_announce "Axis team has destroyed the Allied Command Post!"
		// *----------------------------------- vo ------------------------------------------*
		wm_teamvoiceannounce 1 "allies_hq_compost_damaged"
		wm_addteamvoiceannounce 1 "allies_hq_compost_construct"

		wm_removeteamvoiceannounce 0 "axis_hq_compost_constructed_allies"
		// *----------------------------------- vo ------------------------------------------*
	}

	trigger show_closed_cabinet
	{
		accum 0 abort_if_equal 1		// Closed cabinet active yet?
		setstate allied_cp_closed default
		setstate allied_cp_closed_model default
	}

	trigger show_damaged_cabinet
	{
		accum 0 abort_if_equal 0		// Damaged cabinet active yet?
		setstate allied_cp_damaged default
		setstate allied_cp_damaged_model default
	}
}

// ================================================
axis_cp_open
{
	spawn
	{
		wait 100
		accum 0 set 0			// 0=CP Closed, 1=CP Damaged
		constructible_class 2			// Dyno+Satchel

		trigger self disable_cp_features		// Default charge bar times
		setstate axis_cp_damaged invisible	// Hide damaged CP clipbrush+model
		setstate axis_cp_damaged_model invisible

		wait 1000
		// *----------------------------------- vo ------------------------------------------*
		wm_teamvoiceannounce 0 "axis_hq_compost_construct"
		wm_addteamvoiceannounce 0 "axis_hq_compost_construct"
		// *----------------------------------- vo ------------------------------------------*
	}

	trigger disable_cp_features
	{
		setstate axis_cp_open_model invisible	// Hide Open CP model

		setchargetimefactor 0 soldier 1
		setchargetimefactor 0 lieutenant 1
		setchargetimefactor 0 medic 1
		setchargetimefactor 0 engineer 1
		setchargetimefactor 0 covertops 1

		sethqstatus 0 0			// Landmines team warning message
		disablespeaker speaker_axis_cp		// Disable morse code sound
	}

	trigger enable_cp_features
	{
		setstate axis_cp_open_model default	// Show open CP model

		setchargetimefactor 0 soldier 0.75
		setchargetimefactor 0 lieutenant 0.75
		setchargetimefactor 0 medic 0.75
		setchargetimefactor 0 engineer 0.75
		setchargetimefactor 0 covertops 0.75

		sethqstatus 0 1			// Landmines team warning message
		enablespeaker speaker_axis_cp		// Enable morse code sound
	}

	buildstart final
	{
		setstate axis_cp_closed invisible		// Hide closed CP clipbrush+model
		setstate axis_cp_closed_model invisible
		setstate axis_cp_damaged invisible	// Hide damaged CP clipbrush+model
		setstate axis_cp_damaged_model invisible
	}

	built final
	{
		accum 0 set 1			// Only show the damaged CP model
		trigger self enable_cp_features		// Increase charge bar times

		wm_announce "Axis Command Post constructed. Charge speed increased!"
		// *----------------------------------- vo ------------------------------------------*
		wm_removeteamvoiceannounce 0 "axis_hq_compost_construct"
		wm_teamvoiceannounce 0 "axis_hq_compost_constructed"

		wm_teamvoiceannounce 1 "allies_hq_compost_constructed_axis"
		wm_addteamvoiceannounce 1 "allies_hq_compost_constructed_axis"
		// *----------------------------------- vo ------------------------------------------*
	}

	decayed final
	{
		setstate axis_cp_open_model invisible	// Hide Open CP model
		trigger self show_damaged_cabinet	// Show previous cabinet state
		trigger self show_closed_cabinet
	}

	death
	{
		trigger self show_damaged_cabinet	// Show damaged CP model
		trigger self disable_cp_features		// Default charge bar times

		wm_announce "Allied team has destroyed the Axis Command Post!"
		// *----------------------------------- vo ------------------------------------------*
		wm_teamvoiceannounce 0 "axis_hq_compost_damaged"
		wm_addteamvoiceannounce 0 "axis_hq_compost_construct"

		wm_removeteamvoiceannounce 1 "allies_hq_compost_constructed_axis"
		// *----------------------------------- vo ------------------------------------------*
	}

	trigger show_closed_cabinet
	{
		accum 0 abort_if_equal 1		// Closed cabinet active yet?
		setstate axis_cp_closed default
		setstate axis_cp_closed_model default
	}

	trigger show_damaged_cabinet
	{
		accum 0 abort_if_equal 0		// Damaged cabinet active yet?
		setstate axis_cp_damaged default
		setstate axis_cp_damaged_model default
	}
}

Cheers
Granny


(-SSF-Sage) #2

I didn’t read it a lot, I used about 30 secs so I might not found all the mistakes but here’s some. Move the game_manger to be the first scriptblock in the file.

Also:

trigger gamemanager checkgame_allies

to

trigger game_manager checkgame_allies

and same with axis. Next time wrap your script around code tags.


(GTBGranny) #3

Many thanks for such a quick reply.

Didn’t seem to work though.

My apologies for posting all the script again but here is what I now have.

game_manager
{
	spawn
	{
		wm_axis_respawntime	10
		wm_allied_respawntime	10
		wm_set_round_timelimit	30

		// Stopwatch mode defending team (0=Axis, 1=Allies)
		wm_set_defending_team	0

		// Winner on expiration of round timer (0=Axis, 1=Allies, -1=Nobody)
		wm_setwinner 0

		wait 500
            
            setstate forward_wobj invisible

		setautospawn "Forward Flag" 0
		setautospawn "Forward Flag" 1
	}
}

trigger checkgame_allies
        {
         	wm_setwinner 1
		wait 500
		wm_endround
        }


trigger checkgame_axis
        {
         	wm_setwinner 0
		wait 500
		wm_endround
        }
}
radio_equipment_allies
{
        spawn
        {
                wait 50
		constructible_class 3
        }

        death
        {
                wm_announce "Allies have destroyed the radio equipment!"
                trigger game_manager checkgame_allies


        }
}

radio_equipment_axis
{
        spawn
        {
                wait 50
		constructible_class 3
        }

        death
        {
                wm_announce "Axis have destroyed the radio equipment!"
                trigger game_manager checkgame_axis

        }
}

// ================================================
allied_cp_open
{
	spawn
	{
		wait 100
		accum 0 set 0			// 0=CP Closed, 1=CP Damaged
		constructible_class 2			// Dyno+Satchel

		trigger self disable_cp_features		// Default charge bar times
		setstate allied_cp_damaged invisible	// Hide damaged CP clipbrush+model
		setstate allied_cp_damaged_model invisible

		wait 1000

		// *----------------------------------- vo ------------------------------------------*
		wm_teamvoiceannounce 1 "allies_hq_compost_construct"
		wm_addteamvoiceannounce 1 "allies_hq_compost_construct"
		// *----------------------------------- vo ------------------------------------------*
	}

	trigger disable_cp_features
	{
		setstate allied_cp_open_model invisible	// Hide Open CP model

		setchargetimefactor 1 soldier 1
		setchargetimefactor 1 lieutenant 1
		setchargetimefactor 1 medic 1
		setchargetimefactor 1 engineer 1
		setchargetimefactor 1 covertops 1

		sethqstatus 1 0			// Landmines team warning message
		disablespeaker speaker_allied_cp		// Disable morse code sound
	}

	trigger enable_cp_features
	{
		setstate allied_cp_open_model default	// Show open CP model

		setchargetimefactor 1 soldier 0.75
		setchargetimefactor 1 lieutenant 0.75
		setchargetimefactor 1 medic 0.75
		setchargetimefactor 1 engineer 0.75
		setchargetimefactor 1 covertops 0.75

		sethqstatus 1 1			// Landmines team warning message
		enablespeaker speaker_allied_cp		// Enable morse code sound
	}

	buildstart final
	{
		setstate allied_cp_closed invisible		// Hide closed CP clipbrush+model
		setstate allied_cp_closed_model invisible
		setstate allied_cp_damaged invisible	// Hide damaged CP clipbrush+model
		setstate allied_cp_damaged_model invisible
	}

	built final
	{
		accum 0 set 1			// Only show the damaged CP model
		trigger self enable_cp_features		// Increase charge bar times

		wm_announce "Allied Command Post constructed. Charge speed increased!"
		// *----------------------------------- vo ------------------------------------------*
		wm_removeteamvoiceannounce 1 "allies_hq_compost_construct"
		wm_teamvoiceannounce 1 "allies_hq_compost_constructed"

		wm_teamvoiceannounce 0 "axis_hq_compost_constructed_allies"
		wm_addteamvoiceannounce 0 "axis_hq_compost_constructed_allies"
		// *----------------------------------- vo ------------------------------------------*
	}

	decayed final
	{
		setstate allied_cp_open_model invisible	// Hide Open CP model
		trigger self show_damaged_cabinet	// Show previous cabinet state
		trigger self show_closed_cabinet
	}

	death
	{
		trigger self show_damaged_cabinet	// Show damaged CP model
		trigger self disable_cp_features		// Default charge bar times

		wm_announce "Axis team has destroyed the Allied Command Post!"
		// *----------------------------------- vo ------------------------------------------*
		wm_teamvoiceannounce 1 "allies_hq_compost_damaged"
		wm_addteamvoiceannounce 1 "allies_hq_compost_construct"

		wm_removeteamvoiceannounce 0 "axis_hq_compost_constructed_allies"
		// *----------------------------------- vo ------------------------------------------*
	}

	trigger show_closed_cabinet
	{
		accum 0 abort_if_equal 1		// Closed cabinet active yet?
		setstate allied_cp_closed default
		setstate allied_cp_closed_model default
	}

	trigger show_damaged_cabinet
	{
		accum 0 abort_if_equal 0		// Damaged cabinet active yet?
		setstate allied_cp_damaged default
		setstate allied_cp_damaged_model default
	}
}

// ================================================
axis_cp_open
{
	spawn
	{
		wait 100
		accum 0 set 0			// 0=CP Closed, 1=CP Damaged
		constructible_class 2			// Dyno+Satchel

		trigger self disable_cp_features		// Default charge bar times
		setstate axis_cp_damaged invisible	// Hide damaged CP clipbrush+model
		setstate axis_cp_damaged_model invisible

		wait 1000
		// *----------------------------------- vo ------------------------------------------*
		wm_teamvoiceannounce 0 "axis_hq_compost_construct"
		wm_addteamvoiceannounce 0 "axis_hq_compost_construct"
		// *----------------------------------- vo ------------------------------------------*
	}

	trigger disable_cp_features
	{
		setstate axis_cp_open_model invisible	// Hide Open CP model

		setchargetimefactor 0 soldier 1
		setchargetimefactor 0 lieutenant 1
		setchargetimefactor 0 medic 1
		setchargetimefactor 0 engineer 1
		setchargetimefactor 0 covertops 1

		sethqstatus 0 0			// Landmines team warning message
		disablespeaker speaker_axis_cp		// Disable morse code sound
	}

	trigger enable_cp_features
	{
		setstate axis_cp_open_model default	// Show open CP model

		setchargetimefactor 0 soldier 0.75
		setchargetimefactor 0 lieutenant 0.75
		setchargetimefactor 0 medic 0.75
		setchargetimefactor 0 engineer 0.75
		setchargetimefactor 0 covertops 0.75

		sethqstatus 0 1			// Landmines team warning message
		enablespeaker speaker_axis_cp		// Enable morse code sound
	}

	buildstart final
	{
		setstate axis_cp_closed invisible		// Hide closed CP clipbrush+model
		setstate axis_cp_closed_model invisible
		setstate axis_cp_damaged invisible	// Hide damaged CP clipbrush+model
		setstate axis_cp_damaged_model invisible
	}

	built final
	{
		accum 0 set 1			// Only show the damaged CP model
		trigger self enable_cp_features		// Increase charge bar times

		wm_announce "Axis Command Post constructed. Charge speed increased!"
		// *----------------------------------- vo ------------------------------------------*
		wm_removeteamvoiceannounce 0 "axis_hq_compost_construct"
		wm_teamvoiceannounce 0 "axis_hq_compost_constructed"

		wm_teamvoiceannounce 1 "allies_hq_compost_constructed_axis"
		wm_addteamvoiceannounce 1 "allies_hq_compost_constructed_axis"
		// *----------------------------------- vo ------------------------------------------*
	}

	decayed final
	{
		setstate axis_cp_open_model invisible	// Hide Open CP model
		trigger self show_damaged_cabinet	// Show previous cabinet state
		trigger self show_closed_cabinet
	}

	death
	{
		trigger self show_damaged_cabinet	// Show damaged CP model
		trigger self disable_cp_features		// Default charge bar times

		wm_announce "Allied team has destroyed the Axis Command Post!"
		// *----------------------------------- vo ------------------------------------------*
		wm_teamvoiceannounce 0 "axis_hq_compost_damaged"
		wm_addteamvoiceannounce 0 "axis_hq_compost_construct"

		wm_removeteamvoiceannounce 1 "allies_hq_compost_constructed_axis"
		// *----------------------------------- vo ------------------------------------------*
	}

	trigger show_closed_cabinet
	{
		accum 0 abort_if_equal 1		// Closed cabinet active yet?
		setstate axis_cp_closed default
		setstate axis_cp_closed_model default
	}

	trigger show_damaged_cabinet
	{
		accum 0 abort_if_equal 0		// Damaged cabinet active yet?
		setstate axis_cp_damaged default
		setstate axis_cp_damaged_model default
	}
}

forward_flag
{
      spawn 
      {
             accum 0 set 2                            // Who owns flag: 0-Axis, 1-Allied, 2-Nobody
      }
      trigger axis_capture                            // Touched by an Axis player
      {
                   accum 0 abort_if_equal 0           // do Axis own flag?
                   accum 0 trigger_if_equal 1 forward_flag axis_reclaim // Reclaimed from Allies
                   
                   accum 0 set 0                      // Axis own the flag
                   wm_announce "Axis have captured the Forward Flag!"
                   
                   setstate forward_wobj default
      }
      trigger axis_reclaim
      {
                   alertentity forward_wobj           // Switch command map marker
      }
      trigger allied_capture                          // Touched by an allied player
      {
                   accum 0 abort_if_equal 1           // do Allies own flag?
                   
                   accum 0 set 1                      // Allied own the flag
                   wm_announce "Allies have captured the Forward Flag!"
                   
                   setstate forward_wobj default
                   alertentity forward_wobj           // Switch command map marker
      }

}

(-SSF-Sage) #4

[ CODE]text here[ /CODE] //without spaces

Do you have a script_multiplayer with scriptname game_manager in your map? Does the death event get triggered when you blow up the radio (does it do announce)? Check where the routine stops with g_scriptdebug 1.

Edit. you have some wrong syntax. Weird that it didn’t come up with a script error crash. Here:

 setautospawn "Forward Flag" 1
}
}

Remove one of the closing brackets, because now the checkgame triggers are kinda “lonely”.:smiley:


(kamikazee) #5

Your script is impossible to read if you don’t post it in [ code ] [/ code ] tags (without the spaces). Aligning helps a lot.


(GTBGranny) #6

Many thanks I will do that next time.

When the radio is blown up this appears on the screen so it appears that the announcement is working ok in that regard. “Allies have destroyed the radio equipment!”

I have put my map here for you to look at if you like.

http://cid-20c7b9674e1fe7b6.skydrive.live.com/self.aspx/Enemy%20Territory/ET%20Main/gtb69.pk3

(I have edited this now to the working, but still not finished version.)

There are still a few things that I need to get sorted (Doors opening normally etc) but it will show you what I mean.

Once again many thanks for very quick and helpful reply.

Cheers
Granny


(-SSF-Sage) #7

I edited my last post, it has another error, which probably solves the problem.


(GTBGranny) #8

OK this is what I have in there now and the same problem is happening.

I should make it clear that I have absolutely no idea what I am doing but I assume you have already guessed that.

I only started making the map on Tuesday.

game_manager
{
	spawn
	{
		wm_axis_respawntime	10
		wm_allied_respawntime	10
		wm_set_round_timelimit	30

		// Stopwatch mode defending team (0=Axis, 1=Allies)
		wm_set_defending_team	0

		// Winner on expiration of round timer (0=Axis, 1=Allies, -1=Nobody)
		wm_setwinner 0

		wait 500
            
            setstate forward_wobj invisible

		setautospawn "Forward Flag" 0
		setautospawn "Forward Flag" 1
	}

trigger checkgame_allies
        {
         	wm_setwinner 1
		wait 500
		wm_endround
        }


trigger checkgame_axis
        {
         	wm_setwinner 0
		wait 500
		wm_endround
        }
}
radio_equipment_allies
{
        spawn
        {
                wait 50
		constructible_class 3
        }

        death
        {
                wm_announce "Allies have destroyed the radio equipment!"
                trigger game_manager checkgame_allies


        }
}

radio_equipment_axis
{
        spawn
        {
                wait 50
		constructible_class 3
        }

        death
        {
                wm_announce "Axis have destroyed the radio equipment!"
                trigger game_manager checkgame_axis

        }
}

// ================================================
allied_cp_open
{
	spawn
	{
		wait 100
		accum 0 set 0			// 0=CP Closed, 1=CP Damaged
		constructible_class 2			// Dyno+Satchel

		trigger self disable_cp_features		// Default charge bar times
		setstate allied_cp_damaged invisible	// Hide damaged CP clipbrush+model
		setstate allied_cp_damaged_model invisible

		wait 1000

		// *----------------------------------- vo ------------------------------------------*
		wm_teamvoiceannounce 1 "allies_hq_compost_construct"
		wm_addteamvoiceannounce 1 "allies_hq_compost_construct"
		// *----------------------------------- vo ------------------------------------------*
	}

	trigger disable_cp_features
	{
		setstate allied_cp_open_model invisible	// Hide Open CP model

		setchargetimefactor 1 soldier 1
		setchargetimefactor 1 lieutenant 1
		setchargetimefactor 1 medic 1
		setchargetimefactor 1 engineer 1
		setchargetimefactor 1 covertops 1

		sethqstatus 1 0			// Landmines team warning message
		disablespeaker speaker_allied_cp		// Disable morse code sound
	}

	trigger enable_cp_features
	{
		setstate allied_cp_open_model default	// Show open CP model

		setchargetimefactor 1 soldier 0.75
		setchargetimefactor 1 lieutenant 0.75
		setchargetimefactor 1 medic 0.75
		setchargetimefactor 1 engineer 0.75
		setchargetimefactor 1 covertops 0.75

		sethqstatus 1 1			// Landmines team warning message
		enablespeaker speaker_allied_cp		// Enable morse code sound
	}

	buildstart final
	{
		setstate allied_cp_closed invisible		// Hide closed CP clipbrush+model
		setstate allied_cp_closed_model invisible
		setstate allied_cp_damaged invisible	// Hide damaged CP clipbrush+model
		setstate allied_cp_damaged_model invisible
	}

	built final
	{
		accum 0 set 1			// Only show the damaged CP model
		trigger self enable_cp_features		// Increase charge bar times

		wm_announce "Allied Command Post constructed. Charge speed increased!"
		// *----------------------------------- vo ------------------------------------------*
		wm_removeteamvoiceannounce 1 "allies_hq_compost_construct"
		wm_teamvoiceannounce 1 "allies_hq_compost_constructed"

		wm_teamvoiceannounce 0 "axis_hq_compost_constructed_allies"
		wm_addteamvoiceannounce 0 "axis_hq_compost_constructed_allies"
		// *----------------------------------- vo ------------------------------------------*
	}

	decayed final
	{
		setstate allied_cp_open_model invisible	// Hide Open CP model
		trigger self show_damaged_cabinet	// Show previous cabinet state
		trigger self show_closed_cabinet
	}

	death
	{
		trigger self show_damaged_cabinet	// Show damaged CP model
		trigger self disable_cp_features		// Default charge bar times

		wm_announce "Axis team has destroyed the Allied Command Post!"
		// *----------------------------------- vo ------------------------------------------*
		wm_teamvoiceannounce 1 "allies_hq_compost_damaged"
		wm_addteamvoiceannounce 1 "allies_hq_compost_construct"

		wm_removeteamvoiceannounce 0 "axis_hq_compost_constructed_allies"
		// *----------------------------------- vo ------------------------------------------*
	}

	trigger show_closed_cabinet
	{
		accum 0 abort_if_equal 1		// Closed cabinet active yet?
		setstate allied_cp_closed default
		setstate allied_cp_closed_model default
	}

	trigger show_damaged_cabinet
	{
		accum 0 abort_if_equal 0		// Damaged cabinet active yet?
		setstate allied_cp_damaged default
		setstate allied_cp_damaged_model default
	}
}

// ================================================
axis_cp_open
{
	spawn
	{
		wait 100
		accum 0 set 0			// 0=CP Closed, 1=CP Damaged
		constructible_class 2			// Dyno+Satchel

		trigger self disable_cp_features		// Default charge bar times
		setstate axis_cp_damaged invisible	// Hide damaged CP clipbrush+model
		setstate axis_cp_damaged_model invisible

		wait 1000
		// *----------------------------------- vo ------------------------------------------*
		wm_teamvoiceannounce 0 "axis_hq_compost_construct"
		wm_addteamvoiceannounce 0 "axis_hq_compost_construct"
		// *----------------------------------- vo ------------------------------------------*
	}

	trigger disable_cp_features
	{
		setstate axis_cp_open_model invisible	// Hide Open CP model

		setchargetimefactor 0 soldier 1
		setchargetimefactor 0 lieutenant 1
		setchargetimefactor 0 medic 1
		setchargetimefactor 0 engineer 1
		setchargetimefactor 0 covertops 1

		sethqstatus 0 0			// Landmines team warning message
		disablespeaker speaker_axis_cp		// Disable morse code sound
	}

	trigger enable_cp_features
	{
		setstate axis_cp_open_model default	// Show open CP model

		setchargetimefactor 0 soldier 0.75
		setchargetimefactor 0 lieutenant 0.75
		setchargetimefactor 0 medic 0.75
		setchargetimefactor 0 engineer 0.75
		setchargetimefactor 0 covertops 0.75

		sethqstatus 0 1			// Landmines team warning message
		enablespeaker speaker_axis_cp		// Enable morse code sound
	}

	buildstart final
	{
		setstate axis_cp_closed invisible		// Hide closed CP clipbrush+model
		setstate axis_cp_closed_model invisible
		setstate axis_cp_damaged invisible	// Hide damaged CP clipbrush+model
		setstate axis_cp_damaged_model invisible
	}

	built final
	{
		accum 0 set 1			// Only show the damaged CP model
		trigger self enable_cp_features		// Increase charge bar times

		wm_announce "Axis Command Post constructed. Charge speed increased!"
		// *----------------------------------- vo ------------------------------------------*
		wm_removeteamvoiceannounce 0 "axis_hq_compost_construct"
		wm_teamvoiceannounce 0 "axis_hq_compost_constructed"

		wm_teamvoiceannounce 1 "allies_hq_compost_constructed_axis"
		wm_addteamvoiceannounce 1 "allies_hq_compost_constructed_axis"
		// *----------------------------------- vo ------------------------------------------*
	}

	decayed final
	{
		setstate axis_cp_open_model invisible	// Hide Open CP model
		trigger self show_damaged_cabinet	// Show previous cabinet state
		trigger self show_closed_cabinet
	}

	death
	{
		trigger self show_damaged_cabinet	// Show damaged CP model
		trigger self disable_cp_features		// Default charge bar times

		wm_announce "Allied team has destroyed the Axis Command Post!"
		// *----------------------------------- vo ------------------------------------------*
		wm_teamvoiceannounce 0 "axis_hq_compost_damaged"
		wm_addteamvoiceannounce 0 "axis_hq_compost_construct"

		wm_removeteamvoiceannounce 1 "allies_hq_compost_constructed_axis"
		// *----------------------------------- vo ------------------------------------------*
	}

	trigger show_closed_cabinet
	{
		accum 0 abort_if_equal 1		// Closed cabinet active yet?
		setstate axis_cp_closed default
		setstate axis_cp_closed_model default
	}

	trigger show_damaged_cabinet
	{
		accum 0 abort_if_equal 0		// Damaged cabinet active yet?
		setstate axis_cp_damaged default
		setstate axis_cp_damaged_model default
	}
}

forward_flag
{
      spawn 
      {
             accum 0 set 2                            // Who owns flag: 0-Axis, 1-Allied, 2-Nobody
      }
      trigger axis_capture                            // Touched by an Axis player
      {
                   accum 0 abort_if_equal 0           // do Axis own flag?
                   accum 0 trigger_if_equal 1 forward_flag axis_reclaim // Reclaimed from Allies
                   
                   accum 0 set 0                      // Axis own the flag
                   wm_announce "Axis have captured the Forward Flag!"
                   
                   setstate forward_wobj default
      }
      trigger axis_reclaim
      {
                   alertentity forward_wobj           // Switch command map marker
      }
      trigger allied_capture                          // Touched by an allied player
      {
                   accum 0 abort_if_equal 1           // do Allies own flag?
                   
                   accum 0 set 1                      // Allied own the flag
                   wm_announce "Allies have captured the Forward Flag!"
                   
                   setstate forward_wobj default
                   alertentity forward_wobj           // Switch command map marker
      }

}


Cheers
Granny


(GTBGranny) #9

When I tried that it said:

g_scriptdebug is cheat protected


(TomTom7777) #10

Oops Took too long to reply initially , should have refreshed my bad.

I prefer adding print statements vs. g_scriptdebug. g_scriptdebug is verbose. Also use devmap not map to test.


(-SSF-Sage) #11

That should technically work now. Do you have a script_multiplayer entity in your map with a scriptname game_manager?

For scriptdebug:

do /forcecvar sv_cheats 1 before you type in your command. I think /devmap mapname should also do that (i don’t remember cos I always test my maps with /map mapname).

If nothing else helps, try to remove the waits from the checkgame triggers. That shouldn’t be the case here, but as it is sometimes, it’s always good to try out.


(GTBGranny) #12

ok here is what scriptdebug gave me.

51600 : (n/a) GScript event: dynamited
Planted at the radio equipment.
81600 : (radio_equipment_allies) GScript event: death
81600 : (radio_equipment_allies) GScript command: wm_announce “Allies have destroyed the radio
equipment!”
81600 : (radio_equipment_allies) GScript command: trigger game_manager checkgame_allies
G_Scripting: trigger has unknown name: game_manager
Allies have destroyed the radio equipment!

I assume that will help someone help me !

Do you have a script_multiplayer entity in your map with a scriptname game_manager?

Sorry but I have no idea what that means so I assume I haven’t.


(-SSF-Sage) #13

So add an entity called script_multiplayer somewhere into your map. Give it key: scriptname value: game_manager. You add that just like any other entity. NOTE add ONLY 1 script_multiplayer.

This entity is supposed to tell your map that it has a script file too (and introduce game_manager as the main scriptblock, never change that tho).


(TomTom7777) #14

You must have a script_multiplayer or your map/script won’t work. (Aw shucks too slow again)

A BSP reader can check that it is in the compiled file.


(GTBGranny) #15

In that case I must have one because when I changed the map script slightly the game crashed when I blew the radio.

It is obviously reading the script ok.

Just need to correct the script.


(-SSF-Sage) #16

[QUOTE={GTB} Granny;182799]In that case I must have one because when I changed the map script slightly the game crashed when I blew the radio.

It is obviously reading the script ok.

Just need to correct the script.[/QUOTE]

The script is right. It might have nothing to do with the crash. Check that you have the entity ^^.


(GTBGranny) #17

Guys it is working perfectly now.

It was the script_multiplayer.

Many thanks for your help and advice.

No doubt I will be making many more posts in future !

Cheers
Granny


(-SSF-Sage) #18

[QUOTE=TomTom7777;182798]You must have a script_multiplayer or your map/script won’t work. (Aw shucks too slow again)

A BSP reader can check that it is in the compiled file.[/QUOTE]

Or you can manually check from the BSP too. The easiest would be to check from the map file tho :D. It’s not a shame to be slow. :stroggbanana:

@granny- No problem. I’m glad that you got it working. Always will find help from here for a humble, well presented question. And even easier to get answer is to have the code tags ^^.


(rstu339) #19

水泵有很多种。从原理上可以分为气压泵,离心泵,轴流泵,混流泵,螺旋泵等。使用最多的是离心泵。 气压泵是靠大气压力提升水位的。凭借活塞的运动,制造出一个近似真空,外部大气压将水压上来。这种泵因为依赖与大气压,所以提升水的高度有限。 离心泵的原理是离心现象。是依靠叶轮叶片的转动产生离心作用,将液体甩出。所以,其输送效果依赖于叶轮的转速,直径等因素。 水泵的分类不能将其工作原理和用途综合化分类,那样将会很乱。用途是用途,原理是原理,不同原理的泵可以用在同样的用途。同一种泵同样可以用于不同场合,可以用于不同用途。 比如:混流泵就是斜流泵,其采用混流式叶轮,即液体流出叶轮的方向倾斜于轴线。 轴流式泵其液体流出方向平行于轴线。 其分类主要有化工泵 磁力泵 离心泵 排污泵 自吸泵 油泵 水泵厂 上海水泵厂 离心泵厂家 隔膜泵 螺杆泵 齿轮油泵 屏蔽泵 潜水泵 齿轮泵 管道泵 耐腐蚀泵 耐酸泵 多级泵 不锈钢泵 液下泵等等