Linedef type 434

From SRB2 Wiki
Jump to: navigation, search

Linedef type 434, Award Power-Up, is a type of linedef executor which, when triggered by a player, gives the player a custom power-up.

Setup

The tag given to this linedef is irrelevant. The name of the power-up to award should be written in the control linedef's front upper texture field. If the name is longer than eight characters, it continues in the front middle texture and front lower texture fields.

The front texture X offset of the control linedef determines the value to be given to the power-up. If the power-up is based on an amount of time, the front texture X offset will determine the amount of time the power-up lasts in tics. If the power-up is based on an amount of ammunition, the front texture X offset will determine how much of that power-up the player is awarded. If Flag [6] / Not Climbable is checked, the power-up will not have a time limit, and will remain indefinitely.

If Flag [1] / Block Enemies is checked, the power-up time/amount will instead be set by the control linedef's back upper texture field. This is necessary for power-ups that require names rather than numbers in this field, such as pw_shield and pw_emeralds. As with the front textures, if the name is longer than eight characters, it continues in the back middle texture and back lower texture fields. Arithmetic and bitwise operators can be used here. This is especially useful for pw_shield. For example, setting the back textures to SH_FORCE|10 will give the player a Force Shield with 11 hit points.

The custom powers are as follows:

Name Description
pw_invulnerability Sets the Invincibility timer.
pw_sneakers Sets the Super Sneakers timer.
pw_flashing Sets the temporary invincibility timer (as if the player has just been hit).
pw_shield Sets which shield(s) the player currently has. 1
pw_tailsfly Sets the amount of time left in the player's flight timer.
pw_underwater Sets the player's drowning timer.
pw_spacetime Sets the player's space timer.
pw_extralife Sets how long the extra life music lasts.
pw_super Sets whether the player is Super. The player must still meet the criteria for becoming Super. (Note that this is used internally as a timer for how long the player has been Super, in tics.)
pw_gravityboots Gives the player Gravity Boots for the given duration.
pw_infinityring Sets the Infinity Ring ammo.
pw_automaticring Sets the Automatic Ring ammo.
pw_bouncering Sets the Bounce Ring ammo.
pw_scatterring Sets the Scatter Ring ammo.
pw_grenadering Sets the Grenade Ring ammo.
pw_explosionring Sets the Explosion Ring ammo.
pw_railring Sets the Rail Ring ammo.
pw_emeralds Gives the player a specified number of multiplayer Chaos Emeralds. 2
pw_nights_superloop Sets the Super Paraloop power-up timer (NiGHTS only).
pw_nights_helper Sets the Nightopian Helper power-up timer (NiGHTS only).
pw_nights_linkfreeze Sets the Link Freeze power-up timer (NiGHTS only).
pw_nocontrol Takes control away from the player. Adding 32768 to the front texture X offset will allow the player to jump while affected.
pw_ingoop Sets whether the player is in Brak Eggman's goop.

1 The values for the shields are as follows:

Name Value Description
SH_NONE 0 No shield
SH_JUMP 1 Whirlwind Shield
SH_ATTRACT 2 Attraction Shield
SH_ELEMENTAL 3 Elemental Shield
SH_BOMB 4 Armageddon Shield
SH_BUBBLEWRAP 5 S3&K Bubble Shield
SH_THUNDERCOIN 6 S3&K Thunder Shield
SH_FLAMEAURA 7 S3&K Flame Shield
SH_PITY 8 Pity Shield
SH_FIREFLOWER 0x100 (256) Fire Flower power-up. Note: This can be combined with any of the other shields.
SH_FORCE 0x200 (512) Force Shield. On its own this flag only gives one health point to the shield – the lower 8 bits can be used as extra health points (max extra health is 0xFF, or 255). Note: This cannot be combined with any of the values SH_JUMP to SH_PITY

2 The front texture X offset determines which multiplayer emeralds are given to the player according to the table below. If you wish to award multiple emeralds, calculate the sum of the corresponding values. For example, to award all seven chaos emeralds, give the front texture X offset a value of 127.

Value Name Description
1 EMERALD1 Green Emerald
2 EMERALD2 Purple Emerald
4 EMERALD3 Blue Emerald
8 EMERALD4 Light Blue Emerald
16 EMERALD5 Orange Emerald
32 EMERALD6 Red Emerald
64 EMERALD7 Gray Emerald

Sample

Example file: ex_ld434_awardcustompower.wad (MAP01) 
  • Stepping on the blue button gives the player permanent invincibility. Stepping on the red button removes it.
How to use
  • You may load this file into your favorite map editor, such as Zone Builder. Select MAP01 as the map to load.
  • You may also load this file in the game:
    1. Save ex_ld434_awardcustompower.wad into the addons folder of your SRB2 directory.
    2. Start SRB2, go to the Addons menu, and then select ex_ld434_awardcustompower.wad.
    3. Start the game in Single Player mode.
    4. Press the Console button (~), and type in the command MAP MAP01 to access the example map.
  • When you load this file in the game, it replaces Greenflower Zone Act 1.

  Linedef typesLinedef executors [view]
Triggers:

ContinuousEach TimeOnce • Ring Count (ContinuousOnce) • Character Ability (ContinuousEach TimeOnce) • Race Only – Once • CTF Red Team (ContinuousEach Time) • CTF Blue Team (ContinuousEach Time) • No More Enemies – Once • Number of Pushables (ContinuousOnce) • Condition Set Trigger (ContinuousOnce) • Unlockable (ContinuousOnce) • Trigger After X Calls (ContinuousEach Time) • NiGHTSerize (Each TimeOnce) • De-NiGHTSerize (Each TimeOnce) • NiGHTS Lap (Each TimeOnce) • Ideya Capture Touch (Each TimeOnce) • Player Skin (ContinuousEach TimeOnce) • Object Dye (ContinuousEach TimeOnce) • Level Load


Actions:
Sector:
Set Tagged Sector's Floor Height/TextureSet Tagged Sector's Ceiling Height/TextureSet Tagged Sector's Light LevelChange Tagged Sectors' TagChange Front Sector's TagStart Adjustable Flickering LightStart Adjustable Pulsating LightStart Adjustable Blinking Light (unsynchronized)Start Adjustable Blinking Light (synchronized)Fade Light LevelStop Lighting EffectChange Plane Scroller Direction
Plane movement:
Move Tagged Sector's FloorMove Tagged Sector's CeilingMove Floor According to Front Texture OffsetsMove Ceiling According to Front Texture OffsetsStop Plane MovementStart Platform MovementCrush Ceiling OnceCrush Floor OnceCrush Ceiling and Floor Once
Player/Object:
TeleporterChange Object StateStop ObjectAward ScoreEnable/Disable 2D ModeEnable/Disable Gravity FlipAward Power-UpDisable Player ControlChange Object SizeChange Object Type StateEnable Bosses with ParameterTrack Object's AngleStop Tracking Object's AngleAward RingsSpawn ObjectStop Timer/Exit Stage in Record AttackDye ObjectTrigger Egg Capsule
Other:
Change MusicPlay Sound EffectRun ScriptSwitch to Cut-Away ViewChange SkyChange WeatherShatter FOFChange Tagged Linedef's TexturesStart Metal Sonic RaceCondition Set TriggerCall Lua FunctionEarthquakeMake FOF Disappear/ReappearMake FOF CrumbleChange Tagged Sector's ColormapChange SkyboxExecute Linedef Executor (from Tag)Execute Linedef Executor (Random Range)Set FOF TranslucencyFade FOFStop Fading FOFFade Tagged Sector's ColormapStop Fading Tagged Sector's ColormapControl Text Prompt
PolyObject:
Door SlideDoor SwingMoveMove, OverrideRotate RightRotate Right, OverrideRotate LeftRotate Left, OverrideMove by WaypointsTurn Invisible, IntangibleTurn Visible, TangibleSet TranslucencyFade Translucency