cutscene character work in progress
Before Width: | Height: | Size: 6.7 MiB After Width: | Height: | Size: 6.7 MiB |
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TextureAtlas imagePath="gfHoldup-1.png">
|
||||
<TextureAtlas imagePath="gfHoldup-0.png">
|
||||
<!-- Created with Adobe Animate version 21.0.0.35450 -->
|
||||
<!-- http://www.adobe.com/products/animate.html -->
|
||||
<SubTexture name="GF STARTS TO TURN PART 1 instance 10000" x="3663" y="2044" width="910" height="674" frameX="-4" frameY="-3" frameWidth="918" frameHeight="680"/>
|
Before Width: | Height: | Size: 7.9 MiB After Width: | Height: | Size: 7.9 MiB |
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TextureAtlas imagePath="gfHoldup-2.png">
|
||||
<TextureAtlas imagePath="gfHoldup-1.png">
|
||||
<!-- Created with Adobe Animate version 21.0.0.35450 -->
|
||||
<!-- http://www.adobe.com/products/animate.html -->
|
||||
<SubTexture name="GF STARTS TO TURN PART 2 instance 10000" x="0" y="3890" width="918" height="680" frameX="-224" frameY="-445" frameWidth="1149" frameHeight="1130"/>
|
After Width: | Height: | Size: 3.8 MiB |
|
@ -0,0 +1,29 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TextureAtlas imagePath="gfHoldup-2.png">
|
||||
<!-- Created with Adobe Animate version 21.0.0.35450 -->
|
||||
<!-- http://www.adobe.com/products/animate.html -->
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10000" x="1267" y="2403" width="900" height="843" frameX="-119" frameY="0" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10001" x="2171" y="2403" width="900" height="843" frameX="-119" frameY="0" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10002" x="0" y="3160" width="920" height="817" frameX="-115" frameY="-26" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10003" x="5973" y="3160" width="920" height="817" frameX="-115" frameY="-26" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10004" x="0" y="2403" width="1263" height="753" frameX="-70" frameY="-149" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10005" x="5973" y="2401" width="1338" height="755" frameX="-70" frameY="-236" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10006" x="4603" y="2401" width="1366" height="784" frameX="-75" frameY="-207" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10007" x="3095" y="1619" width="1543" height="777" frameX="-75" frameY="-207" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10008" x="1550" y="1618" width="1541" height="781" frameX="-77" frameY="-203" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10009" x="3095" y="2400" width="1504" height="781" frameX="-77" frameY="-203" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10010" x="0" y="1618" width="1546" height="781" frameX="-77" frameY="-203" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10011" x="5628" y="1600" width="1546" height="797" frameX="-77" frameY="-187" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10012" x="5628" y="810" width="1719" height="786" frameX="-77" frameY="-198" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10013" x="3828" y="809" width="1796" height="806" frameX="0" frameY="-178" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10014" x="5828" y="0" width="1914" height="806" frameX="0" frameY="-178" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10015" x="1920" y="809" width="1904" height="805" frameX="-10" frameY="-179" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10016" x="0" y="809" width="1916" height="805" frameX="-10" frameY="-179" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10017" x="0" y="809" width="1916" height="805" frameX="-10" frameY="-179" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10018" x="3890" y="0" width="1934" height="805" frameX="-10" frameY="-179" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10019" x="3890" y="0" width="1934" height="805" frameX="-10" frameY="-179" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10020" x="1947" y="0" width="1939" height="805" frameX="-10" frameY="-179" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10021" x="1947" y="0" width="1939" height="805" frameX="-10" frameY="-179" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10022" x="0" y="0" width="1943" height="805" frameX="-10" frameY="-179" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10023" x="0" y="0" width="1943" height="805" frameX="-10" frameY="-179" frameWidth="1953" frameHeight="991"/>
|
||||
</TextureAtlas>
|
Before Width: | Height: | Size: 3.0 MiB After Width: | Height: | Size: 3.0 MiB |
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TextureAtlas imagePath="gfHoldup-3.png">
|
||||
<TextureAtlas imagePath="gfHoldup-2.png">
|
||||
<!-- Created with Adobe Animate version 21.0.0.35450 -->
|
||||
<!-- http://www.adobe.com/products/animate.html -->
|
||||
<SubTexture name="PICO ARRIVES PART 2 instance 10000" x="5844" y="2727" width="1936" height="805" frameX="-597" frameY="-251" frameWidth="2533" frameHeight="1056"/>
|
Before Width: | Height: | Size: 3.5 MiB After Width: | Height: | Size: 3.5 MiB |
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TextureAtlas imagePath="gfHoldup-4.png">
|
||||
<TextureAtlas imagePath="gfHoldup-3.png">
|
||||
<!-- Created with Adobe Animate version 21.0.0.35450 -->
|
||||
<!-- http://www.adobe.com/products/animate.html -->
|
||||
<SubTexture name="PICO ARRIVES PART 2 POINT FIVE instance 10000" x="5036" y="0" width="2578" height="1144" frameX="0" frameY="0" frameWidth="2578" frameHeight="1199"/>
|
Before Width: | Height: | Size: 4.3 MiB After Width: | Height: | Size: 4.3 MiB |
|
@ -0,0 +1,5 @@
|
|||
GF STARTS TO TURN PART 1 --- 0 0
|
||||
GF STARTS TO TURN PART 2 --- -224 -443
|
||||
PICO ARRIVES PART 1 --- -118 -180
|
||||
PICO ARRIVES PART 2 --- -743 -335
|
||||
PICO ARRIVES PART 2 POINT FIVE --- -741 -336
|
After Width: | Height: | Size: 3.8 MiB |
|
@ -0,0 +1,29 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TextureAtlas imagePath="gfHoldup-22.png">
|
||||
<!-- Created with Adobe Animate version 21.0.0.35450 -->
|
||||
<!-- http://www.adobe.com/products/animate.html -->
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10000" x="1267" y="2403" width="900" height="843" frameX="-119" frameY="0" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10001" x="2171" y="2403" width="900" height="843" frameX="-119" frameY="0" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10002" x="0" y="3160" width="920" height="817" frameX="-115" frameY="-26" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10003" x="5973" y="3160" width="920" height="817" frameX="-115" frameY="-26" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10004" x="0" y="2403" width="1263" height="753" frameX="-70" frameY="-149" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10005" x="5973" y="2401" width="1338" height="755" frameX="-70" frameY="-236" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10006" x="4603" y="2401" width="1366" height="784" frameX="-75" frameY="-207" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10007" x="3095" y="1619" width="1543" height="777" frameX="-75" frameY="-207" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10008" x="1550" y="1618" width="1541" height="781" frameX="-77" frameY="-203" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10009" x="3095" y="2400" width="1504" height="781" frameX="-77" frameY="-203" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10010" x="0" y="1618" width="1546" height="781" frameX="-77" frameY="-203" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10011" x="5628" y="1600" width="1546" height="797" frameX="-77" frameY="-187" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10012" x="5628" y="810" width="1719" height="786" frameX="-77" frameY="-198" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10013" x="3828" y="809" width="1796" height="806" frameX="0" frameY="-178" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10014" x="5828" y="0" width="1914" height="806" frameX="0" frameY="-178" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10015" x="1920" y="809" width="1904" height="805" frameX="-10" frameY="-179" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10016" x="0" y="809" width="1916" height="805" frameX="-10" frameY="-179" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10017" x="0" y="809" width="1916" height="805" frameX="-10" frameY="-179" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10018" x="3890" y="0" width="1934" height="805" frameX="-10" frameY="-179" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10019" x="3890" y="0" width="1934" height="805" frameX="-10" frameY="-179" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10020" x="1947" y="0" width="1939" height="805" frameX="-10" frameY="-179" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10021" x="1947" y="0" width="1939" height="805" frameX="-10" frameY="-179" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10022" x="0" y="0" width="1943" height="805" frameX="-10" frameY="-179" frameWidth="1953" frameHeight="991"/>
|
||||
<SubTexture name="PICO ARRIVES PART 1 instance 10023" x="0" y="0" width="1943" height="805" frameX="-10" frameY="-179" frameWidth="1953" frameHeight="991"/>
|
||||
</TextureAtlas>
|
|
@ -0,0 +1,96 @@
|
|||
package;
|
||||
|
||||
import flixel.FlxG;
|
||||
import flixel.FlxSprite;
|
||||
import flixel.FlxState;
|
||||
import flixel.addons.display.FlxGridOverlay;
|
||||
import flixel.group.FlxGroup.FlxTypedGroup;
|
||||
import flixel.math.FlxPoint;
|
||||
import flixel.text.FlxText;
|
||||
import flixel.util.FlxColor;
|
||||
|
||||
class CutsceneAnimTestState extends FlxState
|
||||
{
|
||||
var animShit:Array<String> = [
|
||||
'GF STARTS TO TURN PART 1',
|
||||
'GF STARTS TO TURN PART 2',
|
||||
'PICO ARRIVES PART 1',
|
||||
'PICO ARRIVES PART 2',
|
||||
'PICO ARRIVES PART 2 POINT FIVE'
|
||||
];
|
||||
|
||||
var coolPosition:FlxPoint = FlxPoint.get(0, 100);
|
||||
|
||||
var cutsceneGroup:CutsceneCharacter;
|
||||
|
||||
var curSelected:Int = 0;
|
||||
var debugTxt:FlxText;
|
||||
|
||||
public function new()
|
||||
{
|
||||
super();
|
||||
|
||||
var gridBG:FlxSprite = FlxGridOverlay.create(10, 10);
|
||||
gridBG.scrollFactor.set(0.5, 0.5);
|
||||
add(gridBG);
|
||||
|
||||
debugTxt = new FlxText(1000, 20, 0, "", 24);
|
||||
debugTxt.color = FlxColor.BLUE;
|
||||
add(debugTxt);
|
||||
|
||||
for (i in 0...animShit.length)
|
||||
{
|
||||
var dummyLoader:FlxSprite = new FlxSprite();
|
||||
dummyLoader.loadGraphic(Paths.image('cutsceneStuff/gfHoldup-' + i));
|
||||
add(dummyLoader);
|
||||
dummyLoader.alpha = 0.01;
|
||||
dummyLoader.y = FlxG.height - 20;
|
||||
}
|
||||
|
||||
cutsceneGroup = new CutsceneCharacter(0, 100, 'gfHoldup');
|
||||
add(cutsceneGroup);
|
||||
|
||||
// createCutscene(0);
|
||||
// createCutscene(1);
|
||||
// createCutscene(2);
|
||||
// createCutscene(3);
|
||||
// createCutscene(4);
|
||||
}
|
||||
|
||||
override function update(elapsed:Float)
|
||||
{
|
||||
if (FlxG.keys.pressed.SHIFT)
|
||||
{
|
||||
if (FlxG.keys.justPressed.UP)
|
||||
curSelected -= 1;
|
||||
if (FlxG.keys.justPressed.DOWN)
|
||||
curSelected += 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
var valueMulti:Float = 1;
|
||||
|
||||
if (FlxG.keys.pressed.SPACE)
|
||||
valueMulti = 10;
|
||||
|
||||
if (FlxG.keys.justPressed.UP)
|
||||
cutsceneGroup.members[curSelected].y -= valueMulti;
|
||||
if (FlxG.keys.justPressed.DOWN)
|
||||
cutsceneGroup.members[curSelected].y += valueMulti;
|
||||
if (FlxG.keys.justPressed.LEFT)
|
||||
cutsceneGroup.members[curSelected].x -= valueMulti;
|
||||
if (FlxG.keys.justPressed.RIGHT)
|
||||
cutsceneGroup.members[curSelected].x += valueMulti;
|
||||
}
|
||||
|
||||
debugTxt.text = curSelected + " : " + cutsceneGroup.members[curSelected].getPosition();
|
||||
|
||||
if (curSelected < 0)
|
||||
curSelected = animShit.length - 1;
|
||||
|
||||
if (curSelected >= animShit.length)
|
||||
curSelected = 0;
|
||||
|
||||
super.update(elapsed);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,65 @@
|
|||
package;
|
||||
|
||||
import flixel.FlxSprite;
|
||||
import flixel.group.FlxGroup.FlxTypedGroup;
|
||||
import flixel.math.FlxPoint;
|
||||
|
||||
using StringTools;
|
||||
|
||||
class CutsceneCharacter extends FlxTypedGroup<FlxSprite>
|
||||
{
|
||||
public var coolPos:FlxPoint = FlxPoint.get();
|
||||
public var animShit:Map<String, FlxPoint> = new Map();
|
||||
|
||||
private var imageShit:String;
|
||||
|
||||
public function new(x:Float, y:Float, imageShit:String)
|
||||
{
|
||||
super();
|
||||
|
||||
coolPos.set(x, y);
|
||||
|
||||
this.imageShit = imageShit;
|
||||
parseOffsets();
|
||||
createCutscene(0);
|
||||
}
|
||||
|
||||
// shitshow, oh well
|
||||
var arrayLMFAOOOO:Array<String> = [];
|
||||
|
||||
function parseOffsets()
|
||||
{
|
||||
var splitShit:Array<String> = CoolUtil.coolTextFile(Paths.file('images/cutsceneStuff/' + imageShit + "CutsceneOffsets.txt"));
|
||||
|
||||
for (i in splitShit)
|
||||
{
|
||||
var xAndY:FlxPoint = FlxPoint.get();
|
||||
var dumbSplit:Array<String> = i.split('---')[1].trim().split(' ');
|
||||
xAndY.set(Std.parseFloat(dumbSplit[0]), Std.parseFloat(dumbSplit[1]));
|
||||
|
||||
animShit.set(i.split('---')[0].trim(), xAndY);
|
||||
arrayLMFAOOOO.push(i.split('---')[0].trim());
|
||||
}
|
||||
|
||||
trace(animShit);
|
||||
}
|
||||
|
||||
public function createCutscene(daNum:Int = 0)
|
||||
{
|
||||
var cutScene:FlxSprite = new FlxSprite(coolPos.x + animShit.get(arrayLMFAOOOO[daNum]).x, coolPos.y + animShit.get(arrayLMFAOOOO[daNum]).y);
|
||||
cutScene.frames = Paths.getSparrowAtlas('cutsceneStuff/' + imageShit + "-" + daNum);
|
||||
cutScene.animation.addByPrefix('weed', arrayLMFAOOOO[daNum], 24, false);
|
||||
cutScene.animation.play('weed');
|
||||
|
||||
cutScene.animation.finishCallback = function(anim:String)
|
||||
{
|
||||
cutScene.kill();
|
||||
cutScene.destroy();
|
||||
|
||||
if (daNum + 1 < arrayLMFAOOOO.length)
|
||||
createCutscene(daNum + 1);
|
||||
};
|
||||
|
||||
add(cutScene);
|
||||
}
|
||||
}
|
|
@ -44,13 +44,9 @@ class TitleState extends MusicBeatState
|
|||
var ngSpr:FlxSprite;
|
||||
|
||||
var curWacky:Array<String> = [];
|
||||
|
||||
var wackyImage:FlxSprite;
|
||||
|
||||
var lastBeat:Int = 0;
|
||||
|
||||
var swagShader:ColorSwap;
|
||||
|
||||
var thingie:FlxSprite;
|
||||
|
||||
override public function create():Void
|
||||
|
@ -59,6 +55,7 @@ class TitleState extends MusicBeatState
|
|||
polymod.Polymod.init({modRoot: "mods", dirs: ['introMod'], framework: OPENFL});
|
||||
// FlxG.bitmap.clearCache();
|
||||
#end
|
||||
|
||||
/*
|
||||
|
||||
FlxG.stage.window.onDropFile.add(function(path:String)
|
||||
|
@ -177,6 +174,7 @@ class TitleState extends MusicBeatState
|
|||
logoBl.antialiasing = true;
|
||||
logoBl.animation.addByPrefix('bump', 'logo bumpin', 24);
|
||||
logoBl.animation.play('bump');
|
||||
|
||||
logoBl.updateHitbox();
|
||||
|
||||
logoBl.shader = swagShader.shader;
|
||||
|
@ -271,6 +269,9 @@ class TitleState extends MusicBeatState
|
|||
|
||||
override function update(elapsed:Float)
|
||||
{
|
||||
if (FlxG.keys.justPressed.EIGHT)
|
||||
FlxG.switchState(new CutsceneAnimTestState());
|
||||
|
||||
/*
|
||||
if (FlxG.keys.justPressed.R)
|
||||
{
|
||||
|
|