fix prop and actor sizing/positioning
This commit is contained in:
@@ -32,6 +32,7 @@
|
|||||||
// TODO also allow for manually defined flipped frames so text doesn't mirror
|
// TODO also allow for manually defined flipped frames so text doesn't mirror
|
||||||
(set character.actor.flipX ?!(= character.stageFacing character.actor.defaultFacing))
|
(set character.actor.flipX ?!(= character.stageFacing character.actor.defaultFacing))
|
||||||
(character.actor.setGraphicSize ACTOR_WIDTH)
|
(character.actor.setGraphicSize ACTOR_WIDTH)
|
||||||
|
(character.actor.updateHitbox)
|
||||||
(set character.actor.x
|
(set character.actor.x
|
||||||
(- (case character.stagePosition
|
(- (case character.stagePosition
|
||||||
(Left
|
(Left
|
||||||
@@ -64,7 +65,7 @@
|
|||||||
(var DIALOG_WIDTH (- 1280 ACTOR_WIDTH ACTOR_WIDTH))
|
(var DIALOG_WIDTH (- 1280 ACTOR_WIDTH ACTOR_WIDTH))
|
||||||
(var DIALOG_Y 500)
|
(var DIALOG_Y 500)
|
||||||
(var DIALOG_HEIGHT (- 720 DIALOG_Y))
|
(var DIALOG_HEIGHT (- 720 DIALOG_Y))
|
||||||
// TODO these could be customizable to the Actor
|
// TODO these could be customizable to the Actor, wrylies, etc.
|
||||||
(var DIALOG_BOX_COLOR FlxColor.BLACK)
|
(var DIALOG_BOX_COLOR FlxColor.BLACK)
|
||||||
(var DIALOG_COLOR FlxColor.WHITE)
|
(var DIALOG_COLOR FlxColor.WHITE)
|
||||||
(var DIALOG_SIZE 24)
|
(var DIALOG_SIZE 24)
|
||||||
@@ -142,18 +143,20 @@
|
|||||||
(method :Void stopSong [] (when music (music.stop)))
|
(method :Void stopSong [] (when music (music.stop)))
|
||||||
|
|
||||||
(var PROP_MIN_WIDTH 200)
|
(var PROP_MIN_WIDTH 200)
|
||||||
(var PROP_MAX_WIDTH 500)
|
(var PROP_MAX_WIDTH 300)
|
||||||
|
|
||||||
(method :Void showPropOnScreen [:FlxSprite prop :FlxScreenPosition position :Continuation cc]
|
(method :Void showPropOnScreen [:FlxSprite prop :FlxScreenPosition position :Continuation cc]
|
||||||
// TODO assign the other possible positions
|
// TODO assign the other possible positions
|
||||||
|
// TODO allow absolute position and relative position by screen percentages
|
||||||
(let [[x y]
|
(let [[x y]
|
||||||
(case position
|
(case position
|
||||||
(Center [(/ 1280 2) (/ 720 2)])
|
(Center [(/ 1280 2) (/ 720 2)])
|
||||||
(otherwise (throw "not implemented")))]
|
(otherwise (throw "not implemented")))]
|
||||||
(let [width (min (max prop.width PROP_MIN_WIDTH) PROP_MAX_WIDTH)]
|
(let [width (min (max prop.width PROP_MIN_WIDTH) PROP_MAX_WIDTH)]
|
||||||
(prop.setGraphicSize width)
|
(prop.setGraphicSize width)
|
||||||
|
(prop.updateHitbox)
|
||||||
(set prop.x (- x (/ prop.width 2)))
|
(set prop.x (- x (/ prop.width 2)))
|
||||||
(set prop.y (- y (/ (* prop.height prop.scale.y) 2)))
|
(set prop.y (- y (/ prop.height 2)))
|
||||||
(currentState.add prop)))
|
(currentState.add prop)))
|
||||||
// TODO give the prop reveal some time to land
|
// TODO give the prop reveal some time to land
|
||||||
(cc))
|
(cc))
|
||||||
|
Reference in New Issue
Block a user