//Bingus blast

freeslot("SPR_RIEL", "MT_RIEL", "MT_RIELJUMP")

mobjinfo[MT_RIEL] = {
//$Sprite RIELA0
//$Arg0 Button Prompt
//$Arg0Type 11
//$Arg0Enum {1="SPIN"; 2="W"; 3="PLUS"; 4="D"; 5="A"; 6="MOUSELEFT"; 7="MOUSERIGHT"; 8="JUMP"; 9="C1"; 10="C2"; 11="FIRE";}
doomednum = 7022,
spawnstate = S_INVISIBLE,
spawnhealth = 8,
speed = 0,
radius = 16*FRACUNIT,
height = 16*FRACUNIT,
dispoffset = -20,
activesound = sfx_None,
flags = MF_NOGRAVITY|MF_RUNSPAWNFUNC|MF_NOCLIPHEIGHT,
}

mobjinfo[MT_RIELJUMP] = {
doomednum = -1,
spawnstate = S_INVISIBLE,
spawnhealth = 8,
speed = 0,
radius = 16*FRACUNIT,
height = 16*FRACUNIT,
dispoffset = -20,
activesound = sfx_None,
flags = MF_NOGRAVITY|MF_RUNSPAWNFUNC|MF_NOCLIPHEIGHT,
}

   
addHook("MapThingSpawn", function(mo,mapthing)
 
 mo.sprite = SPR_RIEL
 
 if mapthing.args[0] == 1
  
  then mo.frame = A
		end

 if mapthing.args[0] == 2
  
  then mo.frame = B
   end
   
 if mapthing.args[0] == 3
  
  then mo.frame = C
		end

 if mapthing.args[0] == 4
  
  then mo.frame = D
   end
 
 if mapthing.args[0] == 5
  
  then mo.frame = E
		end

 if mapthing.args[0] == 6
  
  then mo.frame = F
   end
   
  if mapthing.args[0] == 7
  
  then mo.frame = F
       mo.renderflags = $|RF_HORIZONTALFLIP
		end

 if mapthing.args[0] == 8
  
  then mo.frame = G
   end
  
   if mapthing.args[0] == 9
  
  then mo.frame = H
   end
  
   if mapthing.args[0] == 10
  
  then mo.frame = I
   end
   
   if mapthing.args[0] == 11
  
  then mo.frame = J
   end
   
   
   
   end,MT_RIEL)
  
 
 
  local driftleftshowtimer
   if driftleftshowtimer == nil
	  then driftleftshowtimer = 0 
	     end
 
  local driftleftshow
     if driftleftshow == nil
	  then driftleftshow = 0
	   end
	   
 local driftrightshowtimer
   if driftrightshowtimer == nil
	  then driftrightshowtimer = 0 
	     end
 
  local driftrightshow
     if driftrightshow == nil
	  then driftrightshow = 0
	   end
   
   
 local function DRIFTL(v, player, cam)
		 
	       local driftleft = v.cachePatch("DRIFTLEFT")
		  if (driftleft == nil) then return end
		   if (driftleftshow == 0) then return end
		  
		  
			    v.drawScaled(50*FU, 50*FU, FRACUNIT/6, driftleft, V_SNAPTOBOTTOM)
				  end

 
 local function DRIFTR(v, player, cam)
		 
	       local driftright = v.cachePatch("DRIFTRIGHT")
		  if (driftright == nil) then return end
		   if (driftrightshow == 0) then return end
		  
		  
			   v.drawScaled(50*FU, 50*FU, FRACUNIT/6, driftright, V_SNAPTOBOTTOM)
				  end
				 
				 
				 
addHook("HUD", DRIFTL, "game")
addHook("HUD", DRIFTR, "game")


addHook("LinedefExecute", function(player)

   if driftleftshow == 0
    then driftleftshow = 1
	    driftrightshow = 0
	 end
	 
	 
	    
	 
 
 end,"DRIFTL")
 
 addHook("LinedefExecute", function(player)

   if driftrightshow == 0
    then driftrightshow = 1
	    driftleftshow = 0
	 end
	 
      
	 
 
 end,"DRIFTR")





addHook("PlayerThink",function(player,mo)
    
	if driftleftshow == 1
	   then driftleftshowtimer = $ + 1
	        end
		   
       
		if driftrightshow == 1
	   then driftleftshowtimer = $ + 1
	        end
			
			
	  if driftleftshowtimer > 64
	      then driftleftshow = 0
		       driftrightshow = 0
			   driftleftshowtimer = 0
		      end
			  
		   
end)

addHook("MapLoad", function()
	 driftleftshow = 0
      driftrightshow = 0
	   driftleftshowtimer = 0
	  end)