public Link(Vector2 pos) { // ToDo: move to an appropriate place in this constructor AddComponent(new LinkLevelBehavior()); this.name = "Link"; // don't do any logic here, just add Components that do the logic Transform transform = GetComponent <Transform>(); transform.position = pos; BasicSprite imageSprite = LinkSpriteFactory.Instance.CreateLinkWalkingUp(); Sprite sprite = new Sprite(imageSprite); sprite.SetAnimate(false); AddComponent(sprite); var wideLink = new WideLink(); transform.AddChild(wideLink); var sword = new Sword(); transform.AddChild(sword); BehaviorScript script = new LinkBehavior(sword, wideLink); AddComponent(script); BehaviorScript inventory = new LinkInventory(); AddComponent(inventory); BehaviorScript healthManagement = new LinkHealthManagement(); AddComponent(healthManagement); Collider coll = new Collider(new RectangleF(6, 38, 30, 24)); AddComponent(coll); coll.response = new LinkCollisionResponse(this); Constants.SetLayerDepth(this, Constants.LayerDepth.Player); BehaviorScript xp = new LinkXPManager(); AddComponent(xp); //transform.AddChild(new TransformTest()); }
public LinkBehavior(Sword sword, WideLink wideLink) { linkDirection = Constants.Direction.UP; this.sword = sword; this.wideLink = wideLink; }