diff --git a/language.def_mission b/language.def_mission index f217066f2..4875f4cd4 100644 --- a/language.def_mission +++ b/language.def_mission @@ -116,7 +116,7 @@ SWWM_MISSION_DOOM7_SECRET = "\n" "Once you make it through, I'll give \cfCytho-sama\c- a call and see what we can do to close it off.\n" "\n" -"I'm starting to run out of ideas on how to end these briefings. Do your thing, \cfDemo-chan\c-!" +"I'm starting to run out of ideas on how to end these briefings. Do your thing, \cfDemo-chan\c-!\n" "\n" "Saya out."; SWWM_MISSION_DOOM8 = diff --git a/language.version b/language.version index 00b6f88e9..19073e9d2 100644 --- a/language.version +++ b/language.version @@ -1,3 +1,3 @@ [default] -SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r337 \cu(Mon 8 Mar 12:30:31 CET 2021)\c-"; -SWWM_SHORTVER="\cw0.9.11b-pre r337 \cu(2021-03-08 12:30:31)\c-"; +SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r338 \cu(Mon 8 Mar 20:55:24 CET 2021)\c-"; +SWWM_SHORTVER="\cw0.9.11b-pre r338 \cu(2021-03-08 20:55:24)\c-"; diff --git a/modeldef.itemgesture b/modeldef.itemgesture index 7f371b763..692c41cb0 100644 --- a/modeldef.itemgesture +++ b/modeldef.itemgesture @@ -173,3 +173,42 @@ Model "FrispyCornGesture" FrameIndex XZW1 S 0 18 FrameIndex XZW1 T 0 19 } +Model "SayaBeanGesture" +{ + Path "models" + Model 0 "SayaBean1st_d.3d" + SurfaceSkin 0 0 "DemoTags.png" + SurfaceSkin 0 1 "DemoArms.png" + SurfaceSkin 0 2 "DemoSoft.png" + SurfaceSkin 0 3 "SayaBean.png" + + AngleOffset -90 + Scale -0.005 0.0025 0.005 + + // Base + FrameIndex XZW1 A 0 0 + // Pickup + FrameIndex XZW1 B 0 1 + FrameIndex XZW1 C 0 2 + FrameIndex XZW1 D 0 3 + FrameIndex XZW1 E 0 4 + FrameIndex XZW1 F 0 5 + FrameIndex XZW1 G 0 6 + FrameIndex XZW1 H 0 7 + FrameIndex XZW1 I 0 8 + FrameIndex XZW1 J 0 9 + FrameIndex XZW1 K 0 10 + FrameIndex XZW1 L 0 11 + FrameIndex XZW1 M 0 12 + FrameIndex XZW1 N 0 13 // Squish + FrameIndex XZW1 O 0 14 + FrameIndex XZW1 P 0 15 + FrameIndex XZW1 Q 0 16 + FrameIndex XZW1 R 0 17 + FrameIndex XZW1 S 0 18 + FrameIndex XZW1 T 0 19 + FrameIndex XZW1 U 0 20 + FrameIndex XZW1 V 0 21 + FrameIndex XZW1 W 0 23 + FrameIndex XZW1 X 0 24 +} diff --git a/models/SayaBean1st.blend b/models/SayaBean1st.blend index 446451939..4ddd2de3e 100644 Binary files a/models/SayaBean1st.blend and b/models/SayaBean1st.blend differ diff --git a/models/SayaBean1st_a.3d b/models/SayaBean1st_a.3d new file mode 100644 index 000000000..775ac9729 Binary files /dev/null and b/models/SayaBean1st_a.3d differ diff --git a/models/SayaBean1st_d.3d b/models/SayaBean1st_d.3d new file mode 100644 index 000000000..53fff01fd Binary files /dev/null and b/models/SayaBean1st_d.3d differ diff --git a/models/modelnotes.txt b/models/modelnotes.txt index 126dd6050..36f6bce55 100644 --- a/models/modelnotes.txt +++ b/models/modelnotes.txt @@ -17,8 +17,8 @@ Collectible gestures: - Love Signals CD - Nutatco Bar - Frispy Corn - - Demo Plush - Saya Bean + - Demo Plush - Peach Juice - Milk Breads - Kirin Manga diff --git a/zscript/handler/swwm_handler_process.zsc b/zscript/handler/swwm_handler_process.zsc index 5965d4a4b..f32e06b1f 100644 --- a/zscript/handler/swwm_handler_process.zsc +++ b/zscript/handler/swwm_handler_process.zsc @@ -208,6 +208,7 @@ extend Class SWWMHandler Console.Printf("FlameT: %d",Random2[FlameT]()); Console.Printf("Flicker: %d",Random2[Flicker]()); Console.Printf("FunTags: %d",Random2[FunTags]()); + Console.Printf("Gesture: %d",Random2[Gesture]()); Console.Printf("Gibs: %d",Random2[Gibs]()); Console.Printf("GoldDrop: %d",Random2[GoldDrop]()); Console.Printf("Goldy: %d",Random2[Goldy]()); diff --git a/zscript/items/swwm_collectibles_gesture.zsc b/zscript/items/swwm_collectibles_gesture.zsc index e1f1ff8d1..103fd83c3 100644 --- a/zscript/items/swwm_collectibles_gesture.zsc +++ b/zscript/items/swwm_collectibles_gesture.zsc @@ -79,7 +79,46 @@ Class FrispyCornGesture : SWWMItemGesture Stop; } } -Class SayaBeanGesture : SWWMItemGesture {} +Class SayaBeanGesture : SWWMItemGesture +{ + action void A_Squish1() + { + A_StartSound("squeak",CHAN_ITEMEXTRA,CHANF_OVERLAP); + } + action void A_Squish2() + { + let realbean = SayaBean(FindInventory("SayaBean")); + if ( realbean && !realbean.callout && !Random[Gesture](0,3) ) + { + for ( int i=0; i