Skip to content

Commit

Permalink
Softcoded Characters Now lol
Browse files Browse the repository at this point in the history
  • Loading branch information
poec987 committed Jun 28, 2024
1 parent 40a8893 commit 4693b36
Show file tree
Hide file tree
Showing 4 changed files with 106 additions and 0 deletions.
1 change: 1 addition & 0 deletions assets/preload/data/characterList.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
bf
bf-bside
bf-test
dad
gf
spooky
Expand Down
46 changes: 46 additions & 0 deletions assets/shared/images/characters/bf-test.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
sprite::BOYFRIEND
icon::26::27

anim::idle::BF idle dance::24

anim::singUP::BF NOTE UP0::24
anim::singDOWN::BF NOTE DOWN0::24
anim::singLEFT::BF NOTE LEFT0::24
anim::singRIGHT::BF NOTE RIGHT0::24

anim::singUPmiss::BF NOTE UP MISS::24
anim::singDOWNmiss::BF NOTE DOWN MISS::24
anim::singLEFTmiss::BF NOTE LEFT MISS::24
anim::singRIGHTmiss::BF NOTE RIGHT MISS::24

anim::hey::BF HEY::24

anim::firstDeath::BF dies::24
anim::deathLoop::BF Dead Loop::24::true
anim::deathConfirm::BF Dead confirm::24

anim::scared::BF idle shaking::24



offset::idle::-5::0

offset::singUP::-29::27
offset::singDOWN::-10::-50
offset::singLEFT::12::-6
offset::singRIGHT::-38::-7

offset::singUPmiss::-29::27
offset::singDOWNmiss::-11::-19
offset::singLEFTmiss::12::24
offset::singRIGHTmiss::-30::21

offset::hey::7::4

offset::firstDeath::37::11
offset::deathLoop::37::5
offset::deathConfirm::37::69

offset::scared::-4::0

flipX
40 changes: 40 additions & 0 deletions source/Character.hx
Original file line number Diff line number Diff line change
Expand Up @@ -576,6 +576,46 @@ class Character extends FlxSprite
addOffset("singLEFT-alt", -30, 15);
addOffset("singDOWN-alt", -30, -27);

playAnim('idle');
default:
var charFile:String = Paths.txtImages("characters/"+curCharacter);
var charFileParams:Array<String> = CoolUtil.coolTextFile(charFile);

for (i in 0...charFileParams.length) {
charFileParams[i].trim();
var line:Array<String> = charFileParams[i].split("::");
switch (line[0]) {
case 'sprite':
frames = Paths.getSparrowAtlas('characters/'+line[1]);
case 'anim':
var loopa:Bool = false;
var flipXa:Bool = false;
var flipYa:Bool = false;

if (line[4] == "true")
loopa = true;
if (line[5] == "true")
flipXa = true;
if (line[6] == "true")
flipYa = true;

animation.addByPrefix(line[1], line[2], Std.parseFloat(line[3]), loopa, flipXa, flipYa);
case 'offset':
addOffset(line[1], Std.parseFloat(line[2]), Std.parseFloat(line[3]));
case 'pixel':
setGraphicSize(Std.int(width * 6));
updateHitbox();
antialiasing = false;
case 'flipX':
flipX = true;
case 'flipY':
flipY = true;
case 'size':
width = Std.parseFloat(line[1]);
height = Std.parseFloat(line[2]);
}
}

playAnim('idle');
}

Expand Down
19 changes: 19 additions & 0 deletions source/HealthIcon.hx
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ package;

import flixel.FlxSprite;

using StringTools;

class HealthIcon extends FlxSprite
{
/**
Expand Down Expand Up @@ -41,6 +43,23 @@ class HealthIcon extends FlxSprite
animation.add('impostor', [29, 30], 0, false, isPlayer);
animation.add('sonicexe', [31, 32], 0, false, isPlayer);
animation.add('lock', [33, 33], 0, false, isPlayer);

if (!animation.exists(char)) {
trace("Softcoded Character Detected");
var charFile:String = Paths.txtImages("characters/"+char);
var charFileParams:Array<String> = CoolUtil.coolTextFile(charFile);
trace("CHARACTER PARAMS: "+charFileParams);

for (i in 0...charFileParams.length) {
charFileParams[i].trim();
var line:Array<String> = charFileParams[i].split("::");

if (line[0] == "icon") {
animation.add(char, [Std.parseInt(line[1]), Std.parseInt(line[2])], 0, false, isPlayer);
}
}
}

animation.play(char);
scrollFactor.set();
}
Expand Down

0 comments on commit 4693b36

Please sign in to comment.