PWAD,addHook("PlayerThink", function(player) if player.mo and player.mo.valid and player and player.powers[pw_super] then if player.powers[pw_flashing] == 0 and player.powers[pw_invulnerability] == 0 and not (player.pflags & PF_GODMODE) then -- Stupid code made objects hit you vertically anywhere so here fix local playerTop = player.mo.z + player.mo.height if (player.mo.subsector.sector.special == 1 or (player.mo.subsector.sector.special == 2 and player.mo.eflags & MFE_UNDERWATER and not (player.powers[pw_shield] & SH_PROTECTWATER)) or (player.mo.subsector.sector.special == 3 and not (player.powers[pw_shield] & SH_PROTECTFIRE)) or (player.mo.subsector.sector.special == 4 and not (player.powers[pw_shield] & SH_PROTECTELECTRIC)) or (player.mo.subsector.sector.special == 5 and not (player.powers[pw_shield] & SH_PROTECTSPIKE))) and (player.mo.z - player.mo.subsector.sector.floorheight == 0) then player.rings = max(player.rings - 5, 0) P_InstaThrust(player.mo, player.drawangle, -20*FRACUNIT) player.mo.momz = 10 * FRACUNIT*P_MobjFlip(player.mo) player.mo.state = S_PLAY_PAIN player.mo.player.powers[pw_flashing] = TICRATE end end end end) addHook("PlayerThink", function(player) if player.mo.valid and player.powers[pw_super]then local sectorthing = player.mo.subsector.sector if sectorthing.valid then for fof in sectorthing.ffloors() //player.score = (player.mo.z - fof.sector.ceilingheight)/FRACUNIT if player.powers[pw_flashing] == 0 and player.powers[pw_invulnerability] == 0 and not (player.pflags & PF_GODMODE) then -- Stupid code made objects hit you vertically anywhere so here fix local playerTop = player.mo.z + player.mo.height local specalsector = fof.sector.special if ((specalsector == 1) or (specalsector == 2 and player.mo.eflags & MFE_UNDERWATER and not (player.powers[pw_shield] & SH_PROTECTWATER)) or (fof.sector.special == 3 and not (player.powers[pw_shield] & SH_PROTECTFIRE)) or (fof.sector.special == 4 and not (player.powers[pw_shield] & SH_PROTECTELECTRIC)) or (specalsector == 5 and not (player.powers[pw_shield] & SH_PROTECTSPIKE))) and (player.mo.z <= fof.sector.ceilingheight and (player.mo.z + player.mo.height) >= fof.sector.floorheight) then player.rings = max(player.rings - 5, 0) P_InstaThrust(player.mo, player.drawangle, -20*FRACUNIT) player.mo.momz = 10 * FRACUNIT*P_MobjFlip(player.mo) player.mo.state = S_PLAY_PAIN player.mo.player.powers[pw_flashing] = TICRATE end end end end end end) addHook("PlayerThink", function(player) if player.mo.valid and player.powers[pw_super]then local sectorthing = player.mo.subsector.sector if sectorthing.valid then for fof in sectorthing.ffloors() //player.score = (player.mo.z - fof.sector.ceilingheight)/FRACUNIT if player.powers[pw_flashing] == 0 and player.powers[pw_invulnerability] == 0 and not (player.pflags & PF_GODMODE) then -- Stupid code made objects hit you vertically anywhere so here fix local playerTop = player.mo.z + player.mo.height local specalsector = fof.sector.special if (fof.master.special == 258) and (player.mo.z <= fof.sector.ceilingheight and (player.mo.z + player.mo.height) >= fof.sector.floorheight) then player.rings = max(player.rings - 5, 0) P_InstaThrust(player.mo, player.drawangle, -20*FRACUNIT) player.mo.momz = 10 * FRACUNIT*P_MobjFlip(player.mo) player.mo.state = S_PLAY_PAIN player.mo.player.powers[pw_flashing] = TICRATE end end end end end end) LUA_SUP1!½LUA_SUP2Þ NLUA_SUP3