@@ -85,6 +85,7 @@ export namespace Camera {
8585 export let mouseWheelWithShiftMode : Settings . Settings [ "mouseWheelWithShiftMode" ] = "zoom" ;
8686 export let mouseWheelWithCtrlMode : Settings . Settings [ "mouseWheelWithCtrlMode" ] = "zoom" ;
8787 let cameraKeyboardScaleRate = 0.2 ;
88+ let cameraResetViewPaddingRate = 1.5 ;
8889
8990 // IDEA: 突然有一个好点子
9091 // 把wsad移动的逻辑改成瞬间爆炸的冲刺一小段距离,而不是改成直接赋予永久的作用力方向然后再撤销
@@ -265,6 +266,9 @@ export namespace Camera {
265266 Settings . watch ( "mouseWheelWithCtrlMode" , ( value ) => {
266267 mouseWheelWithCtrlMode = value ;
267268 } ) ;
269+ Settings . watch ( "cameraResetViewPaddingRate" , ( value ) => {
270+ cameraResetViewPaddingRate = value ;
271+ } ) ;
268272 }
269273
270274 /**
@@ -276,7 +280,7 @@ export namespace Camera {
276280 Camera . targetLocationByScale = Camera . location . clone ( ) ;
277281 // Camera.currentScale = 0.01;
278282 const allEntitiesSize = StageManager . getSize ( ) ;
279- allEntitiesSize . multiply ( 1.5 ) ;
283+ allEntitiesSize . multiply ( cameraResetViewPaddingRate ) ;
280284 Camera . currentScale = Math . min ( Renderer . h / allEntitiesSize . y , Renderer . w / allEntitiesSize . x ) ;
281285 Camera . targetScale = Camera . currentScale ;
282286 }
@@ -292,11 +296,11 @@ export namespace Camera {
292296 Camera . location = center ;
293297 Camera . targetLocationByScale = center . clone ( ) ;
294298
295- const selectedRectangleSize = viewRectangle . size . multiply ( 1.5 ) ;
299+ const selectedRectangleSize = viewRectangle . size . multiply ( cameraResetViewPaddingRate ) ;
296300
297301 // 再取max 1.5 是为了防止缩放过大
298302 Camera . currentScale = Math . min (
299- 1.5 ,
303+ cameraResetViewPaddingRate ,
300304 Math . min ( Renderer . h / selectedRectangleSize . y , Renderer . w / selectedRectangleSize . x ) ,
301305 ) ;
302306 Camera . targetScale = Camera . currentScale ;
0 commit comments