From 27509a729168f735f974b442e0dd9f4a144a7152 Mon Sep 17 00:00:00 2001 From: minjaesong Date: Sun, 5 Jun 2022 15:22:04 +0900 Subject: [PATCH] new furbud sprite for yet another testing --- .idea/artifacts/SpriteAssemblerApp.xml | 71 +++++++++++++++++++ .../runConfigurations/SpriteAssemblerApp.xml | 15 ++++ .../sprites/velki/velki_arm_rest_left.tga | 3 + .../sprites/velki/velki_arm_rest_right.tga | 3 + .../basegame/sprites/velki/velki_head.tga | 3 + .../sprites/velki/velki_leg_rest_left.tga | 3 + .../sprites/velki/velki_leg_rest_right.tga | 3 + .../basegame/sprites/velki/velki_tail_0.tga | 3 + .../basegame/sprites/velki/velki_torso.tga | 3 + .../sprites/velki_whitevalley.properties | 52 ++++++++++++++ .../sprites/velki_whitevalley_glow.properties | 52 ++++++++++++++ src/META-INF/MANIFEST.MF | 6 +- .../gameactors/PlayerBuilderTestSubject1.kt | 5 +- .../spriteassembler/META-INF/MANIFEST.MF | 3 + .../graphics/sprites/furbud2_jointed.psd | 4 +- 15 files changed, 221 insertions(+), 8 deletions(-) create mode 100644 .idea/artifacts/SpriteAssemblerApp.xml create mode 100644 .idea/runConfigurations/SpriteAssemblerApp.xml create mode 100644 assets/mods/basegame/sprites/velki/velki_arm_rest_left.tga create mode 100644 assets/mods/basegame/sprites/velki/velki_arm_rest_right.tga create mode 100644 assets/mods/basegame/sprites/velki/velki_head.tga create mode 100644 assets/mods/basegame/sprites/velki/velki_leg_rest_left.tga create mode 100644 assets/mods/basegame/sprites/velki/velki_leg_rest_right.tga create mode 100644 assets/mods/basegame/sprites/velki/velki_tail_0.tga create mode 100644 assets/mods/basegame/sprites/velki/velki_torso.tga create mode 100644 assets/mods/basegame/sprites/velki_whitevalley.properties create mode 100644 assets/mods/basegame/sprites/velki_whitevalley_glow.properties create mode 100644 src/net/torvald/terrarum/spriteassembler/META-INF/MANIFEST.MF diff --git a/.idea/artifacts/SpriteAssemblerApp.xml b/.idea/artifacts/SpriteAssemblerApp.xml new file mode 100644 index 000000000..cfd3fea8a --- /dev/null +++ b/.idea/artifacts/SpriteAssemblerApp.xml @@ -0,0 +1,71 @@ + + + $PROJECT_DIR$/out + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/runConfigurations/SpriteAssemblerApp.xml b/.idea/runConfigurations/SpriteAssemblerApp.xml new file mode 100644 index 000000000..9f632f982 --- /dev/null +++ b/.idea/runConfigurations/SpriteAssemblerApp.xml @@ -0,0 +1,15 @@ + + + + \ No newline at end of file diff --git a/assets/mods/basegame/sprites/velki/velki_arm_rest_left.tga b/assets/mods/basegame/sprites/velki/velki_arm_rest_left.tga new file mode 100644 index 000000000..cf8472773 --- /dev/null +++ b/assets/mods/basegame/sprites/velki/velki_arm_rest_left.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a061ed90f9a3b464136f0977e41385ca428655a56fc264f65481392b9fda61a9 +size 494 diff --git a/assets/mods/basegame/sprites/velki/velki_arm_rest_right.tga b/assets/mods/basegame/sprites/velki/velki_arm_rest_right.tga new file mode 100644 index 000000000..7e4b9c9a8 --- /dev/null +++ b/assets/mods/basegame/sprites/velki/velki_arm_rest_right.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f142b212364a4b7f89ea4158b2073ecd4493e89af2d3737a1295a1472f3c4f62 +size 522 diff --git a/assets/mods/basegame/sprites/velki/velki_head.tga b/assets/mods/basegame/sprites/velki/velki_head.tga new file mode 100644 index 000000000..b33245fc6 --- /dev/null +++ b/assets/mods/basegame/sprites/velki/velki_head.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b891b4fef5b5064f95d7062ee03e2d952eaf247c1e4e1146e2a74c42e18bfad3 +size 1386 diff --git a/assets/mods/basegame/sprites/velki/velki_leg_rest_left.tga b/assets/mods/basegame/sprites/velki/velki_leg_rest_left.tga new file mode 100644 index 000000000..648d250ba --- /dev/null +++ b/assets/mods/basegame/sprites/velki/velki_leg_rest_left.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:965f93f865c16bd22f0c16abd07709dbebb7a21e099930dc24a3560bc099f9d3 +size 498 diff --git a/assets/mods/basegame/sprites/velki/velki_leg_rest_right.tga b/assets/mods/basegame/sprites/velki/velki_leg_rest_right.tga new file mode 100644 index 000000000..cfb34a4a4 --- /dev/null +++ b/assets/mods/basegame/sprites/velki/velki_leg_rest_right.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9202719cdff4ffd524eb3dbf3e4333272fd3a5324ec34ff78e864a217289b40 +size 498 diff --git a/assets/mods/basegame/sprites/velki/velki_tail_0.tga b/assets/mods/basegame/sprites/velki/velki_tail_0.tga new file mode 100644 index 000000000..5596cca54 --- /dev/null +++ b/assets/mods/basegame/sprites/velki/velki_tail_0.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78672873daefb2f7aff72eef9f62c617e198216847a3ecbc315c466e6419373c +size 162 diff --git a/assets/mods/basegame/sprites/velki/velki_torso.tga b/assets/mods/basegame/sprites/velki/velki_torso.tga new file mode 100644 index 000000000..984dba53e --- /dev/null +++ b/assets/mods/basegame/sprites/velki/velki_torso.tga @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58b2ab620c057497eca0059160897e6849d6ddc3261f320e4d5e761248f4de57 +size 914 diff --git a/assets/mods/basegame/sprites/velki_whitevalley.properties b/assets/mods/basegame/sprites/velki_whitevalley.properties new file mode 100644 index 000000000..a1a2f1333 --- /dev/null +++ b/assets/mods/basegame/sprites/velki_whitevalley.properties @@ -0,0 +1,52 @@ +# Velki Whitevalley is a character made and copyrighted to Pederont, 2018. All rights reserved. +# Used with permission for testing purpose only. + +# complete file name is: SPRITESHEET + bodypart name + EXTENSION +SPRITESHEET=mods/basegame/sprites/velki/velki_ +EXTENSION=.tga +# defines frame size and origin point. Origin point is given as: (originx, size.y - 1) +# ORIGINY is deduced from the sprite size as shown in above; you only need to set ORIGINX +CONFIG=SIZE 48,56;ORIGINX 29 + +# note to self: don't implement skeleton hierarchy: there's too many exceptions +# besides, you have "ALL" key. + +! a skeleton also defines what body parts (images) be used. +! you can also write multiline text using reverse solidus; this is a feature of .properties +! skeleton joints are ordered: foremost-drawn object comes first, which means lowermost object IN THIS LIST +! are painted first, and any object that comes before it will paint over it. In other words, this list is +! first reversed then being iterated. +! Joints' original point is defined in the document sprite_joints.psd. It also has visual representations. +# TODO right now accessory points are explicitly defined. Should they be injected in run-time? +BODYPARTS=HEADGEAR 11,11;\ + HEAD 11,11;\ + ARM_REST_RIGHT 4,2;\ + ARM_REST_LEFT 4,2;\ + LEG_REST_RIGHT 4,7;\ + LEG_REST_LEFT 4,7;\ + TORSO 10,4;\ + TAIL_0 8,1;\ + HELD_ITEM 0,0 +SKELETON_STAND=HEADGEAR 0,32;HAIR_FORE 0,32;\ + ARM_REST_RIGHT -7,23;HELD_ITEM -6,11;\ + HAIR 0,32;HEAD 0,32;\ + TORSO 0,22;\ + LEG_REST_RIGHT -2,7;\ + LEG_REST_LEFT 2,7;\ + ARM_REST_LEFT 5,24;\ + TAIL_0 0,13;TAIL_1 0,13 + +# skeleton_stand is used for testing purpose +ANIM_RUN=DELAY 0.15;ROW 2;SKELETON SKELETON_STAND +ANIM_RUN_1=TAIL_0 0,-999;LEG_REST_RIGHT 1,1;LEG_REST_LEFT -1,0 +ANIM_RUN_2=TAIL_1 0,-999;ALL 0,1;LEG_REST_RIGHT 0,-1;LEG_REST_LEFT 0,1 +ANIM_RUN_3=TAIL_1 0,-999;LEG_REST_RIGHT -1,0;LEG_REST_LEFT 1,1 +ANIM_RUN_4=TAIL_0 0,-999;ALL 0,1;LEG_REST_RIGHT 0,1;LEG_REST_LEFT 0,-1 + + +ANIM_IDLE=DELAY 2;ROW 1;SKELETON SKELETON_STAND +ANIM_IDLE_1=TAIL_1 0,-999 +ANIM_IDLE_2=TAIL_1 0,-999;\ + TORSO 0,-1;HEAD 0,-1;HAIR 0,-1;HELD_ITEM 0,-1;\ + ARM_REST_LEFT 0,-1;ARM_REST_RIGHT 0,-1;\ + HAIR_FORE 0,-1;HEADGEAR 0,-1 diff --git a/assets/mods/basegame/sprites/velki_whitevalley_glow.properties b/assets/mods/basegame/sprites/velki_whitevalley_glow.properties new file mode 100644 index 000000000..9483362fd --- /dev/null +++ b/assets/mods/basegame/sprites/velki_whitevalley_glow.properties @@ -0,0 +1,52 @@ +# Velki Whitevalley is a character made and copyrighted to Pederont, 2018. All rights reserved. +# Used with permission for testing purpose only. + +# complete file name is: SPRITESHEET + bodypart name + EXTENSION +SPRITESHEET=mods/basegame/sprites/velki/velkiglow_ +EXTENSION=.tga +# defines frame size and origin point. Origin point is given as: (originx, size.y - 1) +# ORIGINY is deduced from the sprite size as shown in above; you only need to set ORIGINX +CONFIG=SIZE 48,56;ORIGINX 29 + +# note to self: don't implement skeleton hierarchy: there's too many exceptions +# besides, you have "ALL" key. + +! a skeleton also defines what body parts (images) be used. +! you can also write multiline text using reverse solidus; this is a feature of .properties +! skeleton joints are ordered: foremost-drawn object comes first, which means lowermost object IN THIS LIST +! are painted first, and any object that comes before it will paint over it. In other words, this list is +! first reversed then being iterated. +! Joints' original point is defined in the document sprite_joints.psd. It also has visual representations. +# TODO right now accessory points are explicitly defined. Should they be injected in run-time? +BODYPARTS=HEADGEAR 11,11;\ + HEAD 11,11;\ + ARM_REST_RIGHT 4,2;\ + ARM_REST_LEFT 4,2;\ + LEG_REST_RIGHT 4,7;\ + LEG_REST_LEFT 4,7;\ + TORSO 10,4;\ + TAIL_0 8,1;\ + HELD_ITEM 0,0 +SKELETON_STAND=HEADGEAR 0,32;HAIR_FORE 0,32;\ + ARM_REST_RIGHT -7,23;HELD_ITEM -6,11;\ + HAIR 0,32;HEAD 0,32;\ + TORSO 0,22;\ + LEG_REST_RIGHT -2,7;\ + LEG_REST_LEFT 2,7;\ + ARM_REST_LEFT 5,24;\ + TAIL_0 0,13;TAIL_1 0,13 + +# skeleton_stand is used for testing purpose +ANIM_RUN=DELAY 0.15;ROW 2;SKELETON SKELETON_STAND +ANIM_RUN_1=TAIL_0 0,-999;LEG_REST_RIGHT 1,1;LEG_REST_LEFT -1,0 +ANIM_RUN_2=TAIL_1 0,-999;ALL 0,1;LEG_REST_RIGHT 0,-1;LEG_REST_LEFT 0,1 +ANIM_RUN_3=TAIL_1 0,-999;LEG_REST_RIGHT -1,0;LEG_REST_LEFT 1,1 +ANIM_RUN_4=TAIL_0 0,-999;ALL 0,1;LEG_REST_RIGHT 0,1;LEG_REST_LEFT 0,-1 + + +ANIM_IDLE=DELAY 2;ROW 1;SKELETON SKELETON_STAND +ANIM_IDLE_1=TAIL_1 0,-999 +ANIM_IDLE_2=TAIL_1 0,-999;\ + TORSO 0,-1;HEAD 0,-1;HAIR 0,-1;HELD_ITEM 0,-1;\ + ARM_REST_LEFT 0,-1;ARM_REST_RIGHT 0,-1;\ + HAIR_FORE 0,-1;HEADGEAR 0,-1 diff --git a/src/META-INF/MANIFEST.MF b/src/META-INF/MANIFEST.MF index 7382b405b..d6603425b 100644 --- a/src/META-INF/MANIFEST.MF +++ b/src/META-INF/MANIFEST.MF @@ -1,3 +1,3 @@ -Manifest-Version: 1.0 -Main-Class: net.torvald.terrarum.App - +Manifest-Version: 1.0 +Main-Class: net.torvald.terrarum.App + diff --git a/src/net/torvald/terrarum/modulebasegame/gameactors/PlayerBuilderTestSubject1.kt b/src/net/torvald/terrarum/modulebasegame/gameactors/PlayerBuilderTestSubject1.kt index 5cb669ccc..219f943f8 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameactors/PlayerBuilderTestSubject1.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameactors/PlayerBuilderTestSubject1.kt @@ -1,7 +1,6 @@ package net.torvald.terrarum.modulebasegame.gameactors import net.torvald.spriteanimation.AssembledSpriteAnimation -import net.torvald.spriteanimation.SpriteAnimation import net.torvald.terrarum.ModMgr import net.torvald.terrarum.gameactors.AVKey @@ -11,8 +10,8 @@ import net.torvald.terrarum.gameactors.AVKey object PlayerBuilderTestSubject1 { operator fun invoke(): IngamePlayer { val p: IngamePlayer = IngamePlayer( - ModMgr.getGdxFile("basegame", "sprites/test_sprite.properties").path(), - ModMgr.getGdxFile("basegame", "sprites/test_sprite_glow.properties").path(), + ModMgr.getGdxFile("basegame", "sprites/velki_whitevalley.properties").path(), + ModMgr.getGdxFile("basegame", "sprites/velki_whitevalley_glow.properties").path(), -589141658L // random value thrown ) InjectCreatureRaw(p.actorValue, "basegame", "CreatureHuman.json") diff --git a/src/net/torvald/terrarum/spriteassembler/META-INF/MANIFEST.MF b/src/net/torvald/terrarum/spriteassembler/META-INF/MANIFEST.MF new file mode 100644 index 000000000..48d9e14e5 --- /dev/null +++ b/src/net/torvald/terrarum/spriteassembler/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Main-Class: net.torvald.terrarum.spriteassembler.SpriteAssemblerAppKt + diff --git a/work_files/graphics/sprites/furbud2_jointed.psd b/work_files/graphics/sprites/furbud2_jointed.psd index 68a7138fe..94de1957c 100644 --- a/work_files/graphics/sprites/furbud2_jointed.psd +++ b/work_files/graphics/sprites/furbud2_jointed.psd @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cc4218e979c7ccecbb8a8363fe83e8048e54b1cc991e0a486d0e04c87a2e9829 -size 65278 +oid sha256:92616d0e5abbcc36cc9e36c891c8254fd288468e6437a4276bb8261af3487f1a +size 65322