Guest User

Untitled

a guest
Sep 7th, 2013
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Haxe 1.29 KB | None | 0 0
  1. package entities;
  2.  
  3. import com.haxepunk.HXP;
  4. import com.haxepunk.Entity;
  5. import entities.Player;
  6.  
  7. import com.haxepunk.graphics.Spritemap;
  8.  
  9. class Exit extends entities.Usable
  10. {
  11.     public function new(x:Int, y:Int,_locked:Bool)
  12.     {
  13.         super(x,y);
  14.  
  15.         sprite = new Spritemap("gfx/door.png",64,64);
  16.         sprite.add("closed",[0]);
  17.         sprite.add("opened",[4]);
  18.         sprite.add("open",[0,1,2,3,4],10);
  19.         sprite.add("close",[4,3,2,1,0],10);
  20.         sprite.play("closed");
  21.         graphic = sprite;
  22.  
  23.         opened = false;
  24.         locked = _locked;
  25.         setHitbox(64,64);
  26.         layer = 5;
  27.         dist = 64;
  28.  
  29.        
  30.     }
  31.     private function hasOpened()
  32.     {
  33.         sprite.callbackFunc = null;
  34.         opened = true;
  35.         sprite.play("opened");
  36.        
  37.         if(links.length > 0)
  38.         {
  39.  
  40.            
  41.         }
  42.  
  43.         use(_player);
  44.     }
  45.     private function hasClosed()
  46.     {
  47.         sprite.callbackFunc = null;
  48.         opened = false;
  49.         sprite.play("closed");
  50.     }
  51.  
  52.     public override function use(player:Player)
  53.     {
  54.         _player = player;
  55.         if(!opened && !locked)
  56.         {
  57.             sprite.play("open");
  58.             sprite.callbackFunc = hasOpened;
  59.         }
  60.         if(opened)
  61.         {
  62.             sprite.play("close");
  63.             sprite.callbackFunc = hasClosed;
  64.         }
  65.     }
  66.     public override function update()
  67.     {
  68.         super.update();
  69.     }
  70.  
  71.     private var sprite:Spritemap;
  72.     private var opened:Bool;
  73.     private var locked:Bool;
  74.     private var _player:Player;
  75. }
Advertisement
Add Comment
Please, Sign In to add comment