diff --git a/adventure-test-project/assets/BladeEngine.properties b/adventure-test-project/assets/BladeEngine.properties index 1e6ff59..197785a 100644 --- a/adventure-test-project/assets/BladeEngine.properties +++ b/adventure-test-project/assets/BladeEngine.properties @@ -1,7 +1,7 @@ -bladeEngineVersion=4.0.2 +bladeEngineVersion=4.1.0 debug=false fast_leave=true -gdxVersion=1.9.13 +gdxVersion=1.10.0 inventory_pos=down pie_mode.desktop=false resolutions=1 diff --git a/adventure-test-project/assets/model/00.chapter.json b/adventure-test-project/assets/model/00.chapter.json index a94584e..e9de3fe 100644 --- a/adventure-test-project/assets/model/00.chapter.json +++ b/adventure-test-project/assets/model/00.chapter.json @@ -2267,6 +2267,187 @@ scenes: { }, walkZone: "walkzone" }, + "ink-multiflow": { + id: "ink-multiflow", + layers: [ + { + name: "foreground" + }, + { + name: "dynamic", + dynamic: true + }, + { + name: "background" + } + ], + actors: { + GREEN: { + class: "CharacterActor", + id: "GREEN", + bbox: [ 0, 0, 0, 0, 0, 0, 0, 0 ], + pos: { + x: 1698.7587, + y: 262.90308 + }, + visible: true, + refPoint: { + x: -493.8849, + y: 8.514374 + }, + verbs: {}, + interaction: true, + zIndex: 0, + layer: "dynamic", + renderer: { + class: "AtlasRenderer", + fanims: { + "stand.right": { + class: "AtlasAnimationDesc", + id: "stand.right", + source: "char", + duration: 1, + animationType: "NO_REPEAT", + count: -1, + preload: true + }, + "talk.right": { + class: "AtlasAnimationDesc", + id: "talk.right", + source: "char", + duration: 0.4, + animationType: "REPEAT", + count: -1, + preload: true + }, + "walk.right": { + class: "AtlasAnimationDesc", + id: "walk.right", + source: "char", + duration: 0.7, + animationType: "REPEAT", + count: -1, + preload: true + } + }, + initAnimation: "stand.left", + orgAlign: 0 + }, + tint: { + g: 1, + a: 1 + }, + scaleX: 0.41882372, + scaleY: 0.41882372, + rot: 0, + fakeDepth: true, + bboxFromRenderer: true, + walkingSpeed: 1000 + }, + PLAYER: { + class: "CharacterActor", + id: "PLAYER", + bbox: [ 0, 0, 0, 0, 0, 0, 0, 0 ], + pos: { + x: 381.1529, + y: 120.9249 + }, + visible: true, + refPoint: {}, + verbs: {}, + interaction: false, + zIndex: 0, + layer: "dynamic", + renderer: { + class: "AtlasRenderer", + fanims: { + "stand.right": { + class: "AtlasAnimationDesc", + id: "stand.right", + source: "char", + duration: 1, + animationType: "NO_REPEAT", + count: -1, + preload: true + }, + "talk.right": { + class: "AtlasAnimationDesc", + id: "talk.right", + source: "char", + duration: 0.4, + animationType: "REPEAT", + count: -1, + preload: true + }, + "walk.right": { + class: "AtlasAnimationDesc", + id: "walk.right", + source: "char", + duration: 0.7, + animationType: "REPEAT", + count: -1, + preload: true + } + }, + initAnimation: "stand.right", + orgAlign: 0 + }, + scaleX: 0.58708954, + scaleY: 0.58708954, + rot: 0, + fakeDepth: true, + bboxFromRenderer: true, + walkingSpeed: 1000 + }, + target: { + class: "AnchorActor", + id: "target", + bbox: [], + pos: { + x: 734.9283, + y: 104.98978 + }, + visible: true + }, + walkzone: { + class: "WalkZoneActor", + id: "walkzone", + bbox: [ 34.580566, 38.903107, 64.83856, 483.48502, 1850.839, 500.77533, 1885.4194, 30.257996 ], + pos: {}, + visible: true + } + }, + musicDesc: null, + depthVector: { + x: 616.2952, + y: -227.47778 + }, + verbs: { + init: { + id: "init", + actions: [ + { + class: "Cutmode", + value: true + }, + { + class: "InkRun", + path: "multiflow.flow1", + flow: "flow1", + wait: false + }, + { + class: "InkRun", + path: "multiflow.flow2", + flow: "flow2", + wait: false + } + ] + } + }, + player: "PLAYER", + walkZone: "walkzone" + }, ink1: { id: "ink1", layers: [ diff --git a/adventure-test-project/assets/model/test-story.ink.json b/adventure-test-project/assets/model/test-story.ink.json index f516176..69fd2f8 100644 --- a/adventure-test-project/assets/model/test-story.ink.json +++ b/adventure-test-project/assets/model/test-story.ink.json @@ -1 +1 @@ -{"inkVersion":19,"root":[["\n","\n","ev","str","^> Scene 1","/str","/ev",{"*":"0.c-0","flg":4},"ev","str","^> Scene 2","/str","/ev",{"*":"0.c-1","flg":4},{"c-0":["\n",{"->":"scene1"},{"->":"0.g-0"},null],"c-1":["\n",{"->":"scene2"},{"->":"0.g-0"},null],"g-0":["done",null]}],"done",{"scene1":[{"->":".^.init"},{"init":[["^> Goto: actor=RED, target=target","\n","^> Animation: animation= GREEN.stand.left, wait=false","\n","^GREEN> Hi! This is a scene written with Ink!","\n","^GREEN> Ink is a narrative language developed by Inkle.","\n","^GREEN> Can you drive your game and story throught the Ink language?","\n",["ev",{"^->":"scene1.init.0.10.$r1"},{"temp=":"$r"},"str",{"->":".^.s"},[{"#n":"$r1"}],"/str","/ev",{"*":".^.^.c-0","flg":2},{"s":["^RED> Yes, I can do everything with Ink.",{"->":"$r","var":true},null]}],["ev",{"^->":"scene1.init.0.11.$r1"},{"temp=":"$r"},"str",{"->":".^.s"},[{"#n":"$r1"}],"/str","/ev",{"*":".^.^.c-1","flg":2},{"s":["^RED> I don't think so.",{"->":"$r","var":true},null]}],["ev",{"^->":"scene1.init.0.12.$r1"},{"temp=":"$r"},"str",{"->":".^.s"},[{"#n":"$r1"}],"/str","/ev",{"*":".^.^.c-2","flg":2},{"s":["^RED> I know nothing about Ink.",{"->":"$r","var":true},null]}],{"c-0":["ev",{"^->":"scene1.init.0.c-0.$r2"},"/ev",{"temp=":"$r"},{"->":".^.^.10.s"},[{"#n":"$r2"}],"\n",{"->":".^.^.g-0"},null],"c-1":["ev",{"^->":"scene1.init.0.c-1.$r2"},"/ev",{"temp=":"$r"},{"->":".^.^.11.s"},[{"#n":"$r2"}],"\n",{"->":".^.^.g-0"},null],"c-2":["ev",{"^->":"scene1.init.0.c-2.$r2"},"/ev",{"temp=":"$r"},{"->":".^.^.12.s"},[{"#n":"$r2"}],"\n",{"->":".^.^.g-0"},null],"g-0":["^GREEN> Well, you did it!","\n","end",null]}],null],"green":[["^$PLAYER> Hi!","\n","^GREEN> I don't want to speak with you.","\n",["ev",{"^->":"scene1.green.0.4.$r1"},{"temp=":"$r"},"str",{"->":".^.s"},[{"#n":"$r1"}],"/str","str","^Why?","/str","/ev",{"*":".^.^.c-0","flg":6},{"s":["^$PLAYER > ",{"->":"$r","var":true},null]}],["ev",{"^->":"scene1.green.0.5.$r1"},{"temp=":"$r"},"str",{"->":".^.s"},[{"#n":"$r1"}],"/str","/ev",{"*":".^.^.c-1","flg":2},{"s":["^$PLAYER > Ok. No problemo.",{"->":"$r","var":true},null]}],{"c-0":["ev",{"^->":"scene1.green.0.c-0.$r2"},"/ev",{"temp=":"$r"},{"->":".^.^.4.s"},[{"#n":"$r2"}],"^ You selected why.","\n","^GREEN> Because.","\n","^$PLAYER> Well. I don't understand, but ok.","\n","end",null],"c-1":["ev",{"^->":"scene1.green.0.c-1.$r2"},"/ev",{"temp=":"$r"},{"->":".^.^.5.s"},[{"#n":"$r2"}],"\n","end",null]}],null]}],"scene2":[{"->":".^.d1"},{"d1":[["^PLAYER> Hi!","\n","^PLAYER> How are you?","\n","^GREEN> Fine, thanks!","\n","^GREEN> Are you hungry?","\n",["ev",{"^->":"scene2.d1.0.8.$r1"},{"temp=":"$r"},"str",{"->":".^.s"},[{"#n":"$r1"}],"/str","str","^.","/str","/ev",{"*":".^.^.c-0","flg":6},{"s":["^PLAYER> No",{"->":"$r","var":true},null]}],["ev",{"^->":"scene2.d1.0.9.$r1"},{"temp=":"$r"},"str",{"->":".^.s"},[{"#n":"$r1"}],"/str","/ev",{"*":".^.^.c-1","flg":2},{"s":["^PLAYER> Yes.",{"->":"$r","var":true},null]}],{"c-0":["ev",{"^->":"scene2.d1.0.c-0.$r2"},"/ev",{"temp=":"$r"},{"->":".^.^.8.s"},[{"#n":"$r2"}],"^, I I'm not.","\n","^GREEN> Ok, let me know when you want some food.","\n",{"->":".^.^.g-0"},null],"c-1":["ev",{"^->":"scene2.d1.0.c-1.$r2"},"/ev",{"temp=":"$r"},{"->":".^.^.9.s"},[{"#n":"$r2"}],"\n","^GREEN> Would you like a hamburger?","\n",[["ev",{"^->":"scene2.d1.0.c-1.9.0.$r1"},{"temp=":"$r"},"str",{"->":".^.s"},[{"#n":"$r1"}],"/str","/ev",{"*":".^.^.c-0","flg":2},{"s":["^PLAYER> Yes.",{"->":"$r","var":true},null]}],["ev",{"^->":"scene2.d1.0.c-1.9.1.$r1"},{"temp=":"$r"},"str",{"->":".^.s"},[{"#n":"$r1"}],"/str","/ev",{"*":".^.^.c-1","flg":2},{"s":["^PLAYER> No.",{"->":"$r","var":true},null]}],{"c-0":["ev",{"^->":"scene2.d1.0.c-1.9.c-0.$r2"},"/ev",{"temp=":"$r"},{"->":".^.^.0.s"},[{"#n":"$r2"}],"\n","^GREEN> Maybe you are too fat, here you have a banana.","\n",{"->":".^.^.g-0"},null],"c-1":["ev",{"^->":"scene2.d1.0.c-1.9.c-1.$r2"},"/ev",{"temp=":"$r"},{"->":".^.^.1.s"},[{"#n":"$r2"}],"\n","^GREEN> Well, here you have a banana.","\n",{"->":".^.^.g-0"},null],"g-0":[{"->":".^.^.^.^.g-0"},null]}],null],"g-0":["^PLAYER> Bye.","\n","end",null]}],null]}]}],"listDefs":{}} \ No newline at end of file +{"inkVersion":19,"root":[["\n","\n","\n","ev","str","^> Scene 1","/str","/ev",{"*":"0.c-0","flg":4},"ev","str","^> Scene 2","/str","/ev",{"*":"0.c-1","flg":4},{"c-0":["\n",{"->":"scene1"},{"->":"0.g-0"},null],"c-1":["\n",{"->":"scene2"},{"->":"0.g-0"},null],"g-0":["done",null]}],"done",{"scene1":[{"->":".^.init"},{"init":[["^> Goto: actor=RED, target=target","\n","^> Animation: animation= GREEN.stand.left, wait=false","\n","^GREEN> Hi! This is a scene written with Ink!","\n","^GREEN> Ink is a narrative language developed by Inkle.","\n","^GREEN> Can you drive your game and story throught the Ink language?","\n",["ev",{"^->":"scene1.init.0.10.$r1"},{"temp=":"$r"},"str",{"->":".^.s"},[{"#n":"$r1"}],"/str","/ev",{"*":".^.^.c-0","flg":2},{"s":["^RED> Yes, I can do everything with Ink.",{"->":"$r","var":true},null]}],["ev",{"^->":"scene1.init.0.11.$r1"},{"temp=":"$r"},"str",{"->":".^.s"},[{"#n":"$r1"}],"/str","/ev",{"*":".^.^.c-1","flg":2},{"s":["^RED> I don't think so.",{"->":"$r","var":true},null]}],["ev",{"^->":"scene1.init.0.12.$r1"},{"temp=":"$r"},"str",{"->":".^.s"},[{"#n":"$r1"}],"/str","/ev",{"*":".^.^.c-2","flg":2},{"s":["^RED> I know nothing about Ink.",{"->":"$r","var":true},null]}],{"c-0":["ev",{"^->":"scene1.init.0.c-0.$r2"},"/ev",{"temp=":"$r"},{"->":".^.^.10.s"},[{"#n":"$r2"}],"\n",{"->":".^.^.g-0"},null],"c-1":["ev",{"^->":"scene1.init.0.c-1.$r2"},"/ev",{"temp=":"$r"},{"->":".^.^.11.s"},[{"#n":"$r2"}],"\n",{"->":".^.^.g-0"},null],"c-2":["ev",{"^->":"scene1.init.0.c-2.$r2"},"/ev",{"temp=":"$r"},{"->":".^.^.12.s"},[{"#n":"$r2"}],"\n",{"->":".^.^.g-0"},null],"g-0":["^GREEN> Well, you did it!","\n","end",null]}],null],"green":[["^$PLAYER> Hi!","\n","^GREEN> I don't want to speak with you.","\n",["ev",{"^->":"scene1.green.0.4.$r1"},{"temp=":"$r"},"str",{"->":".^.s"},[{"#n":"$r1"}],"/str","str","^Why?","/str","/ev",{"*":".^.^.c-0","flg":6},{"s":["^$PLAYER > ",{"->":"$r","var":true},null]}],["ev",{"^->":"scene1.green.0.5.$r1"},{"temp=":"$r"},"str",{"->":".^.s"},[{"#n":"$r1"}],"/str","/ev",{"*":".^.^.c-1","flg":2},{"s":["^$PLAYER > Ok. No problemo.",{"->":"$r","var":true},null]}],{"c-0":["ev",{"^->":"scene1.green.0.c-0.$r2"},"/ev",{"temp=":"$r"},{"->":".^.^.4.s"},[{"#n":"$r2"}],"^ You selected why.","\n","^GREEN> Because.","\n","^$PLAYER> Well. I don't understand, but ok.","\n","end",null],"c-1":["ev",{"^->":"scene1.green.0.c-1.$r2"},"/ev",{"temp=":"$r"},{"->":".^.^.5.s"},[{"#n":"$r2"}],"\n","end",null]}],null]}],"scene2":[{"->":".^.d1"},{"d1":[["^PLAYER> Hi!","\n","^PLAYER> How are you?","\n","^GREEN> Fine, thanks!","\n","^GREEN> Are you hungry?","\n",["ev",{"^->":"scene2.d1.0.8.$r1"},{"temp=":"$r"},"str",{"->":".^.s"},[{"#n":"$r1"}],"/str","str","^.","/str","/ev",{"*":".^.^.c-0","flg":6},{"s":["^PLAYER> No",{"->":"$r","var":true},null]}],["ev",{"^->":"scene2.d1.0.9.$r1"},{"temp=":"$r"},"str",{"->":".^.s"},[{"#n":"$r1"}],"/str","/ev",{"*":".^.^.c-1","flg":2},{"s":["^PLAYER> Yes.",{"->":"$r","var":true},null]}],{"c-0":["ev",{"^->":"scene2.d1.0.c-0.$r2"},"/ev",{"temp=":"$r"},{"->":".^.^.8.s"},[{"#n":"$r2"}],"^, I I'm not.","\n","^GREEN> Ok, let me know when you want some food.","\n",{"->":".^.^.g-0"},null],"c-1":["ev",{"^->":"scene2.d1.0.c-1.$r2"},"/ev",{"temp=":"$r"},{"->":".^.^.9.s"},[{"#n":"$r2"}],"\n","^GREEN> Would you like a hamburger?","\n",[["ev",{"^->":"scene2.d1.0.c-1.9.0.$r1"},{"temp=":"$r"},"str",{"->":".^.s"},[{"#n":"$r1"}],"/str","/ev",{"*":".^.^.c-0","flg":2},{"s":["^PLAYER> Yes.",{"->":"$r","var":true},null]}],["ev",{"^->":"scene2.d1.0.c-1.9.1.$r1"},{"temp=":"$r"},"str",{"->":".^.s"},[{"#n":"$r1"}],"/str","/ev",{"*":".^.^.c-1","flg":2},{"s":["^PLAYER> No.",{"->":"$r","var":true},null]}],{"c-0":["ev",{"^->":"scene2.d1.0.c-1.9.c-0.$r2"},"/ev",{"temp=":"$r"},{"->":".^.^.0.s"},[{"#n":"$r2"}],"\n","^GREEN> Maybe you are too fat, here you have a banana.","\n",{"->":".^.^.g-0"},null],"c-1":["ev",{"^->":"scene2.d1.0.c-1.9.c-1.$r2"},"/ev",{"temp=":"$r"},{"->":".^.^.1.s"},[{"#n":"$r2"}],"\n","^GREEN> Well, here you have a banana.","\n",{"->":".^.^.g-0"},null],"g-0":[{"->":".^.^.^.^.g-0"},null]}],null],"g-0":["^PLAYER> Bye.","\n","end",null]}],null]}],"multiflow":[{"->":".^.flow1"},{"flow1":["^> Goto: actor=GREEN, target=GREEN, pos=-800_0","\n","^> Animation: animation=GREEN.stand.right, wait=false","\n","^GREEN> I am the green character.","\n","^> Goto: actor=GREEN, target=GREEN, pos=800_0","\n","^> Animation: animation=GREEN.stand.left, wait=false","\n","^GREEN> This is the flow 1.","\n",{"->":".^"},null],"flow2":["^> Goto: actor=PLAYER, target=PLAYER, pos=800_0","\n","^> Animation: animation=PLAYER.stand.left, wait=false","\n","^PLAYER> I am the white character.","\n","^> Goto: actor=PLAYER, target=PLAYER, pos=-800_0","\n","^> Animation: animation=PLAYER.stand.right, wait=false","\n","^PLAYER> This is the flow 2.","\n",{"->":".^"},null]}]}],"listDefs":{}} \ No newline at end of file diff --git a/adventure-test-project/assets/model/world.properties b/adventure-test-project/assets/model/world.properties index dfdad56..1313014 100644 --- a/adventure-test-project/assets/model/world.properties +++ b/adventure-test-project/assets/model/world.properties @@ -16,3 +16,4 @@ ui.quit=Exit ui.remove=Are you sure you want to remove this saved game? ui.save=Save Game ui.yes=YES +ui.gamesaved=Game Saved diff --git a/adventure-test-project/assets/ui/ui.json b/adventure-test-project/assets/ui/ui.json index 32b25b4..c26ba73 100644 --- a/adventure-test-project/assets/ui/ui.json +++ b/adventure-test-project/assets/ui/ui.json @@ -130,6 +130,7 @@ com.badlogic.gdx.scenes.scene2d.ui.Label$LabelStyle: { debug: { font: debug, fontColor: white}, title: { font: big-font, fontColor: white}, ui-dialog: { font: message-font, fontColor: white}, + ui-text: { font: message-font, fontColor: white, background: black08} }, diff --git a/adventure-test-project/gradle.properties b/adventure-test-project/gradle.properties index 36b90a1..1625698 100644 --- a/adventure-test-project/gradle.properties +++ b/adventure-test-project/gradle.properties @@ -1,10 +1,10 @@ android.injected.testOnly=false -androidGradlePluginVersion=3.5.4 +androidGradlePluginVersion=4.1.3 appName=adventure-test-project -bladeEngineVersion=4.0.2 -bladeInkVersion=0.7.4 -gdxControllersVersion=2.0.1 -gdxVersion=1.9.13 +bladeEngineVersion=4.1.0 +bladeInkVersion=1.0.0 +gdxControllersVersion=2.2.1 +gdxVersion=1.10.0 org.gradle.configureondemand=false org.gradle.daemon=true org.gradle.jvmargs=-Xms128m -Xmx1536m diff --git a/adventure-test-project/ink-src/multiflow.ink b/adventure-test-project/ink-src/multiflow.ink new file mode 100644 index 0000000..a1b1221 --- /dev/null +++ b/adventure-test-project/ink-src/multiflow.ink @@ -0,0 +1,27 @@ +=== multiflow === + += flow1 +> Goto: actor=GREEN, target=GREEN, pos=-800_0 +> Animation: animation=GREEN.stand.right, wait=false + +GREEN> I am the green character. + +> Goto: actor=GREEN, target=GREEN, pos=800_0 +> Animation: animation=GREEN.stand.left, wait=false + +GREEN> This is the flow 1. + +-> flow1 + += flow2 +> Goto: actor=PLAYER, target=PLAYER, pos=800_0 +> Animation: animation=PLAYER.stand.left, wait=false + +PLAYER> I am the white character. + +> Goto: actor=PLAYER, target=PLAYER, pos=-800_0 +> Animation: animation=PLAYER.stand.right, wait=false + +PLAYER> This is the flow 2. + +-> flow2 diff --git a/adventure-test-project/ink-src/test-story.ink b/adventure-test-project/ink-src/test-story.ink index 3f12dee..5a1b069 100644 --- a/adventure-test-project/ink-src/test-story.ink +++ b/adventure-test-project/ink-src/test-story.ink @@ -1,5 +1,6 @@ INCLUDE scene1.ink INCLUDE scene2.ink +INCLUDE multiflow.ink // ---------------------- TEST MENU ------------------------------- diff --git a/adventure-test-spine/assets/BladeEngine.properties b/adventure-test-spine/assets/BladeEngine.properties index 3e46bc1..812ada3 100644 --- a/adventure-test-spine/assets/BladeEngine.properties +++ b/adventure-test-spine/assets/BladeEngine.properties @@ -1,6 +1,6 @@ -bladeEngineVersion=4.0.2-SNAPSHOT +bladeEngineVersion=4.1.0 debug=true -gdxVersion=1.9.13 +gdxVersion=1.10.0 inventory_pos=down pie_mode.desktop=false resolutions=1 diff --git a/adventure-test-spine/gradle.properties b/adventure-test-spine/gradle.properties index 0a5ebc1..7c27a94 100644 --- a/adventure-test-spine/gradle.properties +++ b/adventure-test-spine/gradle.properties @@ -1,10 +1,10 @@ android.injected.testOnly=false -androidGradlePluginVersion=3.5.4 +androidGradlePluginVersion=4.1.3 appName=adventure-test-spine -bladeEngineVersion=4.0.2 -bladeInkVersion=0.7.4 +bladeEngineVersion=4.1.0 +bladeInkVersion=1.0.0 gdxControllersVersion=2.0.1 -gdxVersion=1.9.13 +gdxVersion=1.10.0 org.gradle.configureondemand=false org.gradle.daemon=true org.gradle.jvmargs=-Xms128m -Xmx1500m diff --git a/venus/assets/BladeEngine.properties b/venus/assets/BladeEngine.properties index ab4f37c..dd1a42c 100644 --- a/venus/assets/BladeEngine.properties +++ b/venus/assets/BladeEngine.properties @@ -1,11 +1,11 @@ INIT_SCREEN=org.bladecoder.venus.InitScreen MENU_SCREEN=org.bladecoder.venus.VenusMenuScreen -bladeEngineVersion=4.0.2 +bladeEngineVersion=4.1.0 bonasera_android_url=https\://play.google.com/store/apps/details?id\=com.bladecoder.lj bonasera_desktop_url=https\://bladecoder.itch.io/johnny-bonasera bonasera_ios_url=https\://itunes.apple.com/us/app/revenge-johnny-bonasera/id1151361813 debug=false -gdxVersion=1.9.13 +gdxVersion=1.10.0 inventory_pos=down resolutions=0.5,1 roboVMVersion=2.3.12 diff --git a/venus/assets/model/c00.chapter.json b/venus/assets/model/c00.chapter.json index d4ae85e..516ac29 100644 --- a/venus/assets/model/c00.chapter.json +++ b/venus/assets/model/c00.chapter.json @@ -1,5 +1,5 @@ { -bladeEngineVersion: "4.0.0", +bladeEngineVersion: "4.0.3-SNAPSHOT", sounds: { cable_click: { id: "cable_click", @@ -2640,18 +2640,48 @@ scenes: { state: "INVENTORY", actions: [ { - class: "Say", - actor: "player", - text: "@rope.use.INVENTORY.chair.0.text", - type: "SUBTITLE", - queue: false, - wait: false + class: "IfActorAttr", + actor: "chair", + attr: "STATE", + value: "BROKEN", + caID: "1701269635" }, { - class: "RemoveInventoryItem", - id: "chair", + class: "Comment", + comment: "Pickup the chair if it is in the floor.", + debug: false + }, + { + class: "RunVerb", + actor: "chair", + verb: "pickup", + wait: true + }, + { + class: "End", + caID: "1701269635" + }, + { + class: "End", + caID: "1701269635" + }, + { + class: "IfActorAttr", + actor: "chair", + attr: "STATE", + value: "INVENTORY", + caID: "598502262" + }, + { + class: "DropItem", + actor: "chair", scene: "limbo" }, + { + class: "ActorState", + actor: "rope", + state: "ARMED" + }, { class: "Animation", animation: "rope#rope.withanchor", @@ -2661,9 +2691,25 @@ scenes: { keepDirection: false }, { - class: "ActorState", - actor: "rope", - state: "ARMED" + class: "Say", + actor: "player", + text: "@rope.use.INVENTORY.chair.0.text", + type: "SUBTITLE", + queue: false, + wait: false + }, + { + class: "End", + caID: "598502262" + }, + { + class: "RunVerb", + verb: "use", + wait: true + }, + { + class: "End", + caID: "598502262" } ] }, @@ -2774,18 +2820,6 @@ scenes: { } ] }, - "pickup.INVENTORY": { - id: "pickup", - state: "INVENTORY", - actions: [ - { - class: "LookAt", - actor: "rope", - text: "@rope.pickup.INVENTORY.0.text", - wait: true - } - ] - }, "pickup.FALL": { id: "pickup", state: "FALL", diff --git a/venus/assets/model/c00.properties b/venus/assets/model/c00.properties index 2793c0f..ebf502b 100644 --- a/venus/assets/model/c00.properties +++ b/venus/assets/model/c00.properties @@ -87,7 +87,6 @@ rope.desc=rope rope.lookat.0.text=This rope is my ticket in and out of here. rope.pickup.0.text=I won't leave without the goddess. rope.pickup.ARMED.0.9.text=Rope anchored and ready to go. -rope.pickup.INVENTORY.0.text=I can't throw the rope like that, it won't anchor. rope.pickup.WITH_GODDESS.0.1.text=Mission accomplished, I'm outta here swift and fast. rope.pickup.WITH_GODDESS.0.9.text=And now, how do I get out of here? rope.use.INVENTORY.chair.0.text=It looks like this could get me out of here. diff --git a/venus/gradle.properties b/venus/gradle.properties index 54c58b1..b6b0ab3 100644 --- a/venus/gradle.properties +++ b/venus/gradle.properties @@ -1,10 +1,10 @@ android.injected.testOnly=false -androidGradlePluginVersion=3.5.4 +androidGradlePluginVersion=4.1.3 appName=venus -bladeEngineVersion=4.0.2 -bladeInkVersion=0.7.4 +bladeEngineVersion=4.1.0 +bladeInkVersion=1.0.0 gdxControllersVersion=2.0.1 -gdxVersion=1.9.13 +gdxVersion=1.10.0 org.gradle.configureondemand=false org.gradle.daemon=true org.gradle.jvmargs=-Xms1024m -Xmx2048m