mirror of
https://github.com/FunkinCrew/Funkin.git
synced 2024-11-30 03:25:47 -05:00
camera zoom fixes for mobile
This commit is contained in:
parent
d25b81e1dc
commit
1992d5363e
2 changed files with 52 additions and 33 deletions
|
@ -1,6 +1,8 @@
|
||||||
package;
|
package;
|
||||||
|
|
||||||
import flash.text.TextField;
|
import flash.text.TextField;
|
||||||
|
import flixel.FlxCamera;
|
||||||
|
import flixel.FlxGame;
|
||||||
import flixel.FlxSprite;
|
import flixel.FlxSprite;
|
||||||
import flixel.FlxState;
|
import flixel.FlxState;
|
||||||
import flixel.addons.display.FlxGridOverlay;
|
import flixel.addons.display.FlxGridOverlay;
|
||||||
|
@ -99,7 +101,13 @@ class FreeplayState extends MusicBeatState
|
||||||
// LOAD CHARACTERS
|
// LOAD CHARACTERS
|
||||||
|
|
||||||
bg = new FlxSprite().loadGraphic(Paths.image('menuDesat'));
|
bg = new FlxSprite().loadGraphic(Paths.image('menuDesat'));
|
||||||
bg.setGraphicSize(Std.int(FlxG.width / FlxG.camera.initialZoom));
|
bg.setGraphicSize(Std.int(FlxG.width));
|
||||||
|
bg.updateHitbox();
|
||||||
|
trace(FlxG.width);
|
||||||
|
trace(FlxG.camera.zoom);
|
||||||
|
trace(FlxG.camera.initialZoom);
|
||||||
|
trace(FlxCamera.defaultZoom);
|
||||||
|
trace(FlxG.initialZoom);
|
||||||
add(bg);
|
add(bg);
|
||||||
|
|
||||||
grpSongs = new FlxTypedGroup<Alphabet>();
|
grpSongs = new FlxTypedGroup<Alphabet>();
|
||||||
|
@ -197,13 +205,39 @@ class FreeplayState extends MusicBeatState
|
||||||
var velTouch:Float = 0;
|
var velTouch:Float = 0;
|
||||||
|
|
||||||
var veloctiyLoopShit:Float = 0;
|
var veloctiyLoopShit:Float = 0;
|
||||||
|
var touchTimer:Float = 0;
|
||||||
|
|
||||||
override function update(elapsed:Float)
|
override function update(elapsed:Float)
|
||||||
{
|
{
|
||||||
|
super.update(elapsed);
|
||||||
|
|
||||||
|
if (FlxG.sound.music != null)
|
||||||
|
{
|
||||||
|
if (FlxG.sound.music.volume < 0.7)
|
||||||
|
{
|
||||||
|
FlxG.sound.music.volume += 0.5 * FlxG.elapsed;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
lerpScore = CoolUtil.coolLerp(lerpScore, intendedScore, 0.4);
|
||||||
|
bg.color = FlxColor.interpolate(bg.color, coolColors[songs[curSelected].week % coolColors.length], CoolUtil.camLerpShit(0.045));
|
||||||
|
|
||||||
|
scoreText.text = "PERSONAL BEST:" + Math.round(lerpScore);
|
||||||
|
|
||||||
|
positionHighscore();
|
||||||
|
|
||||||
|
var upP = controls.UI_UP_P;
|
||||||
|
var downP = controls.UI_DOWN_P;
|
||||||
|
var accepted = controls.ACCEPT;
|
||||||
|
|
||||||
if (FlxG.onMobile)
|
if (FlxG.onMobile)
|
||||||
{
|
{
|
||||||
if (FlxG.touches.getFirst() != null)
|
if (FlxG.touches.getFirst() != null)
|
||||||
{
|
{
|
||||||
|
if (touchTimer >= 1.5)
|
||||||
|
accepted = true;
|
||||||
|
|
||||||
|
touchTimer += FlxG.elapsed;
|
||||||
var touch:FlxTouch = FlxG.touches.getFirst();
|
var touch:FlxTouch = FlxG.touches.getFirst();
|
||||||
|
|
||||||
velTouch = Math.abs((touch.screenY - dyTouch)) / 50;
|
velTouch = Math.abs((touch.screenY - dyTouch)) / 50;
|
||||||
|
@ -228,6 +262,8 @@ class FreeplayState extends MusicBeatState
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
touchTimer = 0;
|
||||||
|
|
||||||
if (velTouch >= 0)
|
if (velTouch >= 0)
|
||||||
{
|
{
|
||||||
trace(velTouch);
|
trace(velTouch);
|
||||||
|
@ -248,27 +284,6 @@ class FreeplayState extends MusicBeatState
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
super.update(elapsed);
|
|
||||||
|
|
||||||
if (FlxG.sound.music != null)
|
|
||||||
{
|
|
||||||
if (FlxG.sound.music.volume < 0.7)
|
|
||||||
{
|
|
||||||
FlxG.sound.music.volume += 0.5 * FlxG.elapsed;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
lerpScore = CoolUtil.coolLerp(lerpScore, intendedScore, 0.4);
|
|
||||||
bg.color = FlxColor.interpolate(bg.color, coolColors[songs[curSelected].week % coolColors.length], CoolUtil.camLerpShit(0.045));
|
|
||||||
|
|
||||||
scoreText.text = "PERSONAL BEST:" + Math.round(lerpScore);
|
|
||||||
|
|
||||||
positionHighscore();
|
|
||||||
|
|
||||||
var upP = controls.UI_UP_P;
|
|
||||||
var downP = controls.UI_DOWN_P;
|
|
||||||
var accepted = controls.ACCEPT;
|
|
||||||
|
|
||||||
#if mobile
|
#if mobile
|
||||||
for (touch in FlxG.touches.list)
|
for (touch in FlxG.touches.list)
|
||||||
{
|
{
|
||||||
|
|
|
@ -164,6 +164,10 @@ class PlayState extends MusicBeatState
|
||||||
|
|
||||||
override public function create()
|
override public function create()
|
||||||
{
|
{
|
||||||
|
defaultCamZoom = FlxCamera.defaultZoom;
|
||||||
|
|
||||||
|
defaultCamZoom *= 1.05;
|
||||||
|
|
||||||
if (FlxG.sound.music != null)
|
if (FlxG.sound.music != null)
|
||||||
FlxG.sound.music.stop();
|
FlxG.sound.music.stop();
|
||||||
|
|
||||||
|
@ -282,7 +286,7 @@ class PlayState extends MusicBeatState
|
||||||
add(street);
|
add(street);
|
||||||
case "milf" | 'satin-panties' | 'high':
|
case "milf" | 'satin-panties' | 'high':
|
||||||
curStage = 'limo';
|
curStage = 'limo';
|
||||||
defaultCamZoom = 0.90;
|
defaultCamZoom *= 0.90;
|
||||||
|
|
||||||
var skyBG:FlxSprite = new FlxSprite(-120, -50).loadGraphic(Paths.image('limo/limoSunset'));
|
var skyBG:FlxSprite = new FlxSprite(-120, -50).loadGraphic(Paths.image('limo/limoSunset'));
|
||||||
skyBG.scrollFactor.set(0.1, 0.1);
|
skyBG.scrollFactor.set(0.1, 0.1);
|
||||||
|
@ -323,7 +327,7 @@ class PlayState extends MusicBeatState
|
||||||
case "cocoa" | 'eggnog':
|
case "cocoa" | 'eggnog':
|
||||||
curStage = 'mall';
|
curStage = 'mall';
|
||||||
|
|
||||||
defaultCamZoom = 0.80;
|
defaultCamZoom *= 0.80;
|
||||||
|
|
||||||
var bg:FlxSprite = new FlxSprite(-1000, -500).loadGraphic(Paths.image('christmas/bgWalls'));
|
var bg:FlxSprite = new FlxSprite(-1000, -500).loadGraphic(Paths.image('christmas/bgWalls'));
|
||||||
bg.antialiasing = true;
|
bg.antialiasing = true;
|
||||||
|
@ -395,7 +399,7 @@ class PlayState extends MusicBeatState
|
||||||
case 'senpai' | 'roses':
|
case 'senpai' | 'roses':
|
||||||
curStage = 'school';
|
curStage = 'school';
|
||||||
|
|
||||||
// defaultCamZoom = 0.9;
|
// defaultCamZoom *= 0.9;
|
||||||
|
|
||||||
var bgSky = new FlxSprite().loadGraphic(Paths.image('weeb/weebSky'));
|
var bgSky = new FlxSprite().loadGraphic(Paths.image('weeb/weebSky'));
|
||||||
bgSky.scrollFactor.set(0.1, 0.1);
|
bgSky.scrollFactor.set(0.1, 0.1);
|
||||||
|
@ -519,7 +523,7 @@ class PlayState extends MusicBeatState
|
||||||
*/
|
*/
|
||||||
|
|
||||||
case 'guns' | 'stress' | 'ugh':
|
case 'guns' | 'stress' | 'ugh':
|
||||||
defaultCamZoom = 0.90;
|
defaultCamZoom *= 0.90;
|
||||||
curStage = 'tank';
|
curStage = 'tank';
|
||||||
|
|
||||||
var bg:BGSprite = new BGSprite('tankSky', -400, -400, 0, 0);
|
var bg:BGSprite = new BGSprite('tankSky', -400, -400, 0, 0);
|
||||||
|
@ -592,7 +596,7 @@ class PlayState extends MusicBeatState
|
||||||
foregroundSprites.add(fgTank3);
|
foregroundSprites.add(fgTank3);
|
||||||
|
|
||||||
default:
|
default:
|
||||||
defaultCamZoom = 0.9;
|
defaultCamZoom *= 0.9;
|
||||||
curStage = 'stage';
|
curStage = 'stage';
|
||||||
|
|
||||||
var bg:BGSprite = new BGSprite('stageback', -600, -200, 0.9, 0.9);
|
var bg:BGSprite = new BGSprite('stageback', -600, -200, 0.9, 0.9);
|
||||||
|
@ -1776,7 +1780,7 @@ class PlayState extends MusicBeatState
|
||||||
|
|
||||||
function tweenCamIn():Void
|
function tweenCamIn():Void
|
||||||
{
|
{
|
||||||
FlxTween.tween(FlxG.camera, {zoom: 1.3}, (Conductor.stepCrochet * 4 / 1000), {ease: FlxEase.elasticInOut});
|
FlxTween.tween(FlxG.camera, {zoom: 1.3 * FlxCamera.defaultZoom}, (Conductor.stepCrochet * 4 / 1000), {ease: FlxEase.elasticInOut});
|
||||||
}
|
}
|
||||||
|
|
||||||
override function openSubState(SubState:FlxSubState)
|
override function openSubState(SubState:FlxSubState)
|
||||||
|
@ -2031,7 +2035,7 @@ class PlayState extends MusicBeatState
|
||||||
if (camZooming)
|
if (camZooming)
|
||||||
{
|
{
|
||||||
FlxG.camera.zoom = FlxMath.lerp(defaultCamZoom, FlxG.camera.zoom, 0.95);
|
FlxG.camera.zoom = FlxMath.lerp(defaultCamZoom, FlxG.camera.zoom, 0.95);
|
||||||
camHUD.zoom = FlxMath.lerp(1, camHUD.zoom, 0.95);
|
camHUD.zoom = FlxMath.lerp(1 * FlxCamera.defaultZoom, camHUD.zoom, 0.95);
|
||||||
}
|
}
|
||||||
|
|
||||||
FlxG.watch.addQuick("beatShit", curBeat);
|
FlxG.watch.addQuick("beatShit", curBeat);
|
||||||
|
@ -2631,7 +2635,7 @@ class PlayState extends MusicBeatState
|
||||||
}
|
}
|
||||||
|
|
||||||
if (SONG.song.toLowerCase() == 'tutorial')
|
if (SONG.song.toLowerCase() == 'tutorial')
|
||||||
FlxTween.tween(FlxG.camera, {zoom: 1}, (Conductor.stepCrochet * 4 / 1000), {ease: FlxEase.elasticInOut});
|
FlxTween.tween(FlxG.camera, {zoom: 1 * FlxCamera.defaultZoom}, (Conductor.stepCrochet * 4 / 1000), {ease: FlxEase.elasticInOut});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3020,13 +3024,13 @@ class PlayState extends MusicBeatState
|
||||||
{
|
{
|
||||||
if (curSong.toLowerCase() == 'milf' && curBeat >= 168 && curBeat < 200 && camZooming && FlxG.camera.zoom < 1.35)
|
if (curSong.toLowerCase() == 'milf' && curBeat >= 168 && curBeat < 200 && camZooming && FlxG.camera.zoom < 1.35)
|
||||||
{
|
{
|
||||||
FlxG.camera.zoom += 0.015;
|
FlxG.camera.zoom += 0.015 * FlxCamera.defaultZoom;
|
||||||
camHUD.zoom += 0.03;
|
camHUD.zoom += 0.03;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (camZooming && FlxG.camera.zoom < 1.35 && curBeat % 4 == 0)
|
if (camZooming && FlxG.camera.zoom < (1.35 * FlxCamera.defaultZoom) && curBeat % 4 == 0)
|
||||||
{
|
{
|
||||||
FlxG.camera.zoom += 0.015;
|
FlxG.camera.zoom += 0.015 * FlxCamera.defaultZoom;
|
||||||
camHUD.zoom += 0.03;
|
camHUD.zoom += 0.03;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue