Skip to content

Commit

Permalink
Merge pull request KadeArchive#1717 from Spel0/fix-fixin-fixes
Browse files Browse the repository at this point in the history
Week 6 static arrows fix + alt anims for BF and Opponent
  • Loading branch information
Kade-github authored Aug 14, 2021
2 parents e3e37d9 + 048e167 commit 04247e9
Show file tree
Hide file tree
Showing 6 changed files with 68 additions and 37 deletions.
16 changes: 14 additions & 2 deletions source/Character.hx
Original file line number Diff line number Diff line change
Expand Up @@ -452,7 +452,7 @@ class Character extends FlxSprite
/**
* FOR GF DANCING SHIT
*/
public function dance(forced:Bool = false)
public function dance(forced:Bool = false, altAnim:Bool = false)
{
if (!debugMode)
{
Expand All @@ -476,13 +476,25 @@ class Character extends FlxSprite
else
playAnim('danceLeft');
default:
playAnim('idle', forced);
if (altAnim && animation.getByName('idle-alt') != null)
playAnim('idle-alt', forced);
else
playAnim('idle', forced);
}
}
}

public function playAnim(AnimName:String, Force:Bool = false, Reversed:Bool = false, Frame:Int = 0):Void
{

if (AnimName.endsWith('alt') && animation.getByName(AnimName) == null)
{
#if debug
FlxG.log.warn(['Such alt animation doesnt exist: ' + AnimName]);
#end
AnimName = AnimName.split('-')[0];
}

animation.play(AnimName, Force, Reversed, Frame);

var daOffset = animOffsets.get(AnimName);
Expand Down
51 changes: 33 additions & 18 deletions source/ChartingState.hx
Original file line number Diff line number Diff line change
Expand Up @@ -301,7 +301,7 @@ class ChartingState extends MusicBeatState
{
var renderer = new SectionRender(0,640 * awfgaw,GRID_SIZE);
if (_song.notes[awfgaw] == null)
_song.notes.push(newSection(16,true,false));
_song.notes.push(newSection(16,true,false,false));
renderer.section = _song.notes[awfgaw];

sectionRenderes.add(renderer);
Expand Down Expand Up @@ -1183,7 +1183,8 @@ class ChartingState extends MusicBeatState
var check_mustHitSection:FlxUICheckBox;
var check_changeBPM:FlxUICheckBox;
var stepperSectionBPM:FlxUINumericStepper;
var check_altAnim:FlxUICheckBox;
var check_p1AltAnim:FlxUICheckBox;
var check_p2AltAnim:FlxUICheckBox;

function addSectionUI():Void
{
Expand Down Expand Up @@ -1267,8 +1268,11 @@ class ChartingState extends MusicBeatState
check_mustHitSection.checked = true;
// _song.needsVoices = check_mustHit.checked;

check_altAnim = new FlxUICheckBox(10, 340, null, null, "Alternate Animation", 100);
check_altAnim.name = 'check_altAnim';
check_p1AltAnim = new FlxUICheckBox(10, 340, null, null, "P1 Alternate Animation", 100);
check_p1AltAnim.name = 'check_p1AltAnim';

check_p2AltAnim = new FlxUICheckBox(200, 340, null, null, "P2 Alternate Animation", 100);
check_p2AltAnim.name = 'check_p2AltAnim';

var refresh = new FlxButton(10, 60, 'Refresh Section', function() {
var section = getSectionByTime(Conductor.songPosition);
Expand All @@ -1277,7 +1281,8 @@ class ChartingState extends MusicBeatState
return;

check_mustHitSection.checked = section.mustHitSection;
check_altAnim.checked = section.altAnim;
check_p1AltAnim.checked = section.p1AltAnim;
check_p2AltAnim.checked = section.p2AltAnim;
});

var startSection:FlxButton = new FlxButton(10, 85, "Play Here", function() {
Expand All @@ -1294,7 +1299,8 @@ class ChartingState extends MusicBeatState
//tab_group_section.add(stepperCopy);
//tab_group_section.add(stepperCopyLabel);
tab_group_section.add(check_mustHitSection);
tab_group_section.add(check_altAnim);
tab_group_section.add(check_p1AltAnim);
tab_group_section.add(check_p2AltAnim);
//tab_group_section.add(copyButton);
tab_group_section.add(clearSectionButton);
tab_group_section.add(swapSection);
Expand Down Expand Up @@ -1511,8 +1517,10 @@ class ChartingState extends MusicBeatState
var label = check.getLabel().text;
switch (label)
{
case "Alternate Animation":
getSectionByTime(Conductor.songPosition).altAnim = check.checked;
case "P1 Alternate Animation":
getSectionByTime(Conductor.songPosition).p1AltAnim = check.checked;
case "P2 Alternate Animation":
getSectionByTime(Conductor.songPosition).p2AltAnim = check.checked;
}
}
else if (id == FlxUINumericStepper.CHANGE_EVENT && (sender is FlxUINumericStepper))
Expand Down Expand Up @@ -2073,7 +2081,8 @@ class ChartingState extends MusicBeatState
{
lastUpdatedSection = weird;
check_mustHitSection.checked = weird.mustHitSection;
check_altAnim.checked = weird.altAnim;
check_p1AltAnim.checked = weird.p1AltAnim;
check_p2AltAnim.checked = weird.p2AltAnim;
}
}

Expand Down Expand Up @@ -2547,13 +2556,14 @@ class ChartingState extends MusicBeatState
if (sec == null)
{
check_mustHitSection.checked = true;
check_altAnim.checked = false;
check_p1AltAnim.checked = false;
check_p2AltAnim.checked = false;
}
else
{
check_mustHitSection.checked = sec.mustHitSection;
check_altAnim.checked = sec.altAnim;
check_changeBPM.checked = sec.changeBPM;
check_p1AltAnim.checked = sec.p1AltAnim;
check_p2AltAnim.checked = sec.p2AltAnim;
}
}

Expand Down Expand Up @@ -2681,7 +2691,9 @@ class ChartingState extends MusicBeatState
mustHitSection: true,
sectionNotes: [],
typeOfSection: 0,
altAnim: false
altAnim: false,
p1AltAnim: false,
p2AltAnim: false
};

_song.notes.push(sec);
Expand Down Expand Up @@ -2792,7 +2804,7 @@ class ChartingState extends MusicBeatState
updateGrid();
}

private function newSection(lengthInSteps:Int = 16,mustHitSection:Bool = false,altAnim:Bool = true):SwagSection
private function newSection(lengthInSteps:Int = 16,mustHitSection:Bool = false,p1AltAnim:Bool = true, p2AltAnim:Bool = true):SwagSection
{

var daPos:Float = 0;
Expand Down Expand Up @@ -2820,7 +2832,9 @@ class ChartingState extends MusicBeatState
mustHitSection: mustHitSection,
sectionNotes: [],
typeOfSection: 0,
altAnim: altAnim
altAnim: false,
p1AltAnim: p1AltAnim,
p2AltAnim: p2AltAnim
};


Expand Down Expand Up @@ -2894,15 +2908,16 @@ class ChartingState extends MusicBeatState
}
for (daSection1 in 0..._song.notes.length)
{
newSong.push(newSection(16,_song.notes[daSection1].mustHitSection,_song.notes[daSection1].altAnim));
newSong.push(newSection(16,_song.notes[daSection1].mustHitSection,_song.notes[daSection1].p1AltAnim,_song.notes[daSection1].p2AltAnim));
}

for (daSection in 0...(_song.notes.length))
{
var aimtosetsection = daSection+Std.int((totaladdsection));
if(aimtosetsection<0) aimtosetsection = 0;
newSong[aimtosetsection].mustHitSection = _song.notes[daSection].mustHitSection;
newSong[aimtosetsection].altAnim = _song.notes[daSection].altAnim;
newSong[aimtosetsection].p1AltAnim = _song.notes[daSection].p1AltAnim;
newSong[aimtosetsection].p2AltAnim = _song.notes[daSection].p2AltAnim;
//trace("section "+daSection);
for(daNote in 0...(_song.notes[daSection].sectionNotes.length))
{
Expand Down Expand Up @@ -3021,7 +3036,7 @@ class ChartingState extends MusicBeatState
}
else
{
var note:Note = new Note(n.strumTime, n.noteData % 4,null,false,true);
var note:Note = new Note(n.strumTime, n.noteData % 4,null,false,true, n.isAlt);
note.rawNoteData = n.noteData;
note.sustainLength = noteSus;
note.setGraphicSize(Math.floor(GRID_SIZE), Math.floor(GRID_SIZE));
Expand Down
4 changes: 3 additions & 1 deletion source/Note.hx
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,9 @@ class Note extends FlxSprite
animation.add(dataColor[i] + 'holdend', [i + 4]); // Tails
}

setGraphicSize(Std.int(width * PlayState.daPixelZoom));
var widthSize = Std.int(PlayState.curStage.startsWith('school') ? (width * PlayState.daPixelZoom) : (isSustainNote ? (width * (PlayState.daPixelZoom - 1.5)) : (width * PlayState.daPixelZoom)));

setGraphicSize(widthSize);
updateHitbox();
default:
frames = Paths.getSparrowAtlas('NOTE_assets');
Expand Down
25 changes: 11 additions & 14 deletions source/PlayState.hx
Original file line number Diff line number Diff line change
Expand Up @@ -3060,7 +3060,7 @@ class PlayState extends MusicBeatState

if (SONG.notes[Math.floor(curStep / 16)] != null)
{
if (SONG.notes[Math.floor(curStep / 16)].altAnim)
if (SONG.notes[Math.floor(curStep / 16)].p1AltAnim)
altAnim = '-alt';
}

Expand Down Expand Up @@ -4382,17 +4382,14 @@ class PlayState extends MusicBeatState
else
totalNotesHit += 1;

switch (note.noteData)
{
case 2:
boyfriend.playAnim('singUP', true);
case 3:
boyfriend.playAnim('singRIGHT', true);
case 1:
boyfriend.playAnim('singDOWN', true);
case 0:
boyfriend.playAnim('singLEFT', true);
}
var altAnim:String = "";
if (note.isAlt)
{
altAnim = '-alt';
trace("Alt note on BF");
}

boyfriend.playAnim('sing' + dataSuffix[note.noteData] + altAnim, true);

#if windows
if (luaModchart != null)
Expand Down Expand Up @@ -4621,7 +4618,7 @@ class PlayState extends MusicBeatState
// Dad doesnt interupt his own notes
if ((!dad.animation.curAnim.name.startsWith("sing")) && dad.curCharacter != 'gf')
if ((curBeat % idleBeat == 0 || !idleToBeat) || dad.curCharacter == "spooky")
dad.dance(idleToBeat);
dad.dance(idleToBeat, SONG.notes[Math.floor(curStep / 16)].p1AltAnim);
}
// FlxG.log.add('change bpm' + SONG.notes[Std.int(curStep / 16)].changeBPM);
wiggleShit.update(Conductor.crochet);
Expand Down Expand Up @@ -4655,7 +4652,7 @@ class PlayState extends MusicBeatState

if (!boyfriend.animation.curAnim.name.startsWith("sing") && (curBeat % idleBeat == 0 || !idleToBeat))
{
boyfriend.playAnim('idle', idleToBeat);
boyfriend.playAnim('idle' + ((SONG.notes[Math.floor(curStep / 16)].p2AltAnim && boyfriend.animation.getByName('idle-alt') != null) ? '-alt' : ''), idleToBeat);
}

/*if (!dad.animation.curAnim.name.startsWith("sing"))
Expand Down
2 changes: 2 additions & 0 deletions source/Section.hx
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ typedef SwagSection =
var bpm:Float;
var changeBPM:Bool;
var altAnim:Bool;
var p1AltAnim:Bool;
var p2AltAnim:Bool;
}

class Section
Expand Down
7 changes: 5 additions & 2 deletions source/Song.hx
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,6 @@ class Song
if (song.eventObjects == null)
song.eventObjects = [];


for(i in song.eventObjects)
{
var name = Reflect.field(i,"name");
Expand Down Expand Up @@ -176,7 +175,11 @@ class Song


// conversion stuff

for (section in swagShit.notes)
{
if (section.altAnim)
section.p1AltAnim = section.altAnim;
}

return swagShit;
}
Expand Down

0 comments on commit 04247e9

Please sign in to comment.