+ var MoveToPlaceStartHomelessEvent = enchant.Class.create(Event,{
+ initialize: function (_data){
+ this.data = _data;
+ this.yukkuri = this.data.myYukkuri;
+ this.action = this.data.action;
+
+ var yukkuri = this.yukkuri;
+ var node = this.data.targetNode;
+
+ this.action.status = EAction.MOVE_TO_PLACE_HOMELESS_UNDERWAY;
+ yukkuri.vx = node.x + node.width /2 - yukkuri.getX();
+ yukkuri.vy = node.y + node.height - yukkuri.getY() - yukkuri.getHeight() / 2;
+ var distance = (Math.abs(yukkuri.vx) + Math.abs(yukkuri.vy)) / 2;
+ var frame = distance + distance/5 + 1;
+ yukkuri.direction = yukkuri.vx > 0 ? EDirection.RIGHT : EDirection.LEFT;
+ yukkuri.reverse();
+
+ yukkuri.moveBy(yukkuri.vx, yukkuri.vy, frame, {
+ "onactionend": this.onactionend(this)
+ });
+ },
+ onactionend:function(self){
+ return function(e){
+ if(typeof e === "undefined")return;
+ self.action.setStatus(EAction.DECLARE_PLACE_HOMELESS);
+ self.data = null;
+ self.yukkuri = null;
+ self.action = null;
+ };
+ }
+ });
+ var DeclarePlaceHomelessEvent = enchant.Class.create(Event,{
+ initialize: function (_data){
+ this.data = _data;
+ this.yukkuri = _data.myYukkuri;
+ this.place = _data.targetNode;
+ this.action = _data.action;
+ this.action.setStatus(EAction.WAIT);
+