Skip to content

Commit

Permalink
Made some runtime refinements. Updated tests to use new simplified ru…
Browse files Browse the repository at this point in the history
…ntime.
  • Loading branch information
duncandoit committed May 19, 2022
1 parent 971c180 commit e5f1b24
Show file tree
Hide file tree
Showing 10 changed files with 391 additions and 363 deletions.
Binary file added Example-iOS/Assets/bullet_man_game.riv
Binary file not shown.
12 changes: 8 additions & 4 deletions Example-iOS/RiveExample.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@
04026DC427CE3ED6002B3DBF /* SwiftSimpleAnimation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04026DC327CE3ED6002B3DBF /* SwiftSimpleAnimation.swift */; };
04026DC827CE3EE6002B3DBF /* SwiftLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04026DC727CE3EE6002B3DBF /* SwiftLayout.swift */; };
04026DCA27CE3EF6002B3DBF /* SwiftMultipleAnimations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04026DC927CE3EF6002B3DBF /* SwiftMultipleAnimations.swift */; };
04026DCC27CE3F03002B3DBF /* SwiftLoopMode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04026DCB27CE3F03002B3DBF /* SwiftLoopMode.swift */; };
04026DCE27CE3F0F002B3DBF /* SwiftStateMachine.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04026DCD27CE3F0F002B3DBF /* SwiftStateMachine.swift */; };
042C88832643D6B900E7DBB2 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 042C88822643D6B900E7DBB2 /* Main.storyboard */; };
042C88882643DB7100E7DBB2 /* SimpleAnimation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 042C88872643DB7100E7DBB2 /* SimpleAnimation.swift */; };
Expand Down Expand Up @@ -56,6 +55,8 @@
C3D187F3280751A8008B739A /* RiveProgressBar.swift in Sources */ = {isa = PBXBuildFile; fileRef = C3D187F2280751A8008B739A /* RiveProgressBar.swift */; };
C3D187F728075B6C008B739A /* riveslider.riv in Resources */ = {isa = PBXBuildFile; fileRef = C3D187F628075B6C008B739A /* riveslider.riv */; };
C3D187F9280770EA008B739A /* truck.riv in Resources */ = {isa = PBXBuildFile; fileRef = C3D187F8280770EA008B739A /* truck.riv */; };
C3E2B58A2833ECB500A8651B /* bullet_man_game.riv in Resources */ = {isa = PBXBuildFile; fileRef = C3E2B5872833ECB500A8651B /* bullet_man_game.riv */; };
C3E2B58C2833ECFE00A8651B /* SwiftCannonGame.swift in Sources */ = {isa = PBXBuildFile; fileRef = C3E2B58B2833ECFE00A8651B /* SwiftCannonGame.swift */; };
C3ECAC252817BE1100A81123 /* magic_8-ball_v2.riv in Resources */ = {isa = PBXBuildFile; fileRef = C3ECAC222817BE1100A81123 /* magic_8-ball_v2.riv */; };
C3ECAC272817BE4600A81123 /* SwiftTouchEvents.swift in Sources */ = {isa = PBXBuildFile; fileRef = C3ECAC262817BE4600A81123 /* SwiftTouchEvents.swift */; };
C3ECAC2B281837B300A81123 /* play_button_event_example.riv in Resources */ = {isa = PBXBuildFile; fileRef = C3ECAC28281837B300A81123 /* play_button_event_example.riv */; };
Expand Down Expand Up @@ -113,7 +114,6 @@
04026DC327CE3ED6002B3DBF /* SwiftSimpleAnimation.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftSimpleAnimation.swift; sourceTree = "<group>"; };
04026DC727CE3EE6002B3DBF /* SwiftLayout.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftLayout.swift; sourceTree = "<group>"; };
04026DC927CE3EF6002B3DBF /* SwiftMultipleAnimations.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftMultipleAnimations.swift; sourceTree = "<group>"; };
04026DCB27CE3F03002B3DBF /* SwiftLoopMode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftLoopMode.swift; sourceTree = "<group>"; };
04026DCD27CE3F0F002B3DBF /* SwiftStateMachine.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftStateMachine.swift; sourceTree = "<group>"; };
042C88822643D6B900E7DBB2 /* Main.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = Main.storyboard; sourceTree = "<group>"; };
042C88872643DB7100E7DBB2 /* SimpleAnimation.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SimpleAnimation.swift; sourceTree = "<group>"; };
Expand Down Expand Up @@ -158,6 +158,8 @@
C3D187F2280751A8008B739A /* RiveProgressBar.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RiveProgressBar.swift; sourceTree = "<group>"; };
C3D187F628075B6C008B739A /* riveslider.riv */ = {isa = PBXFileReference; lastKnownFileType = file; path = riveslider.riv; sourceTree = "<group>"; };
C3D187F8280770EA008B739A /* truck.riv */ = {isa = PBXFileReference; lastKnownFileType = file; path = truck.riv; sourceTree = "<group>"; };
C3E2B5872833ECB500A8651B /* bullet_man_game.riv */ = {isa = PBXFileReference; lastKnownFileType = file; path = bullet_man_game.riv; sourceTree = "<group>"; };
C3E2B58B2833ECFE00A8651B /* SwiftCannonGame.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftCannonGame.swift; sourceTree = "<group>"; };
C3ECAC222817BE1100A81123 /* magic_8-ball_v2.riv */ = {isa = PBXFileReference; lastKnownFileType = file; path = "magic_8-ball_v2.riv"; sourceTree = "<group>"; };
C3ECAC262817BE4600A81123 /* SwiftTouchEvents.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftTouchEvents.swift; sourceTree = "<group>"; };
C3ECAC28281837B300A81123 /* play_button_event_example.riv */ = {isa = PBXFileReference; lastKnownFileType = file; path = play_button_event_example.riv; sourceTree = "<group>"; };
Expand Down Expand Up @@ -249,6 +251,7 @@
C9696B0E24FC6FD10041502A /* Assets */ = {
isa = PBXGroup;
children = (
C3E2B5872833ECB500A8651B /* bullet_man_game.riv */,
C3745FCB282AE2320087F4AF /* hero_editor.riv */,
C3ECAC30281840EF00A81123 /* watch_v1.riv */,
C3ECAC29281837B300A81123 /* leg_day_events_example.riv */,
Expand Down Expand Up @@ -301,10 +304,10 @@
C9CB2F12264C92D200E7FF0D /* SwiftWidgets.swift */,
04026DC727CE3EE6002B3DBF /* SwiftLayout.swift */,
04026DC927CE3EF6002B3DBF /* SwiftMultipleAnimations.swift */,
04026DCB27CE3F03002B3DBF /* SwiftLoopMode.swift */,
04026DCD27CE3F0F002B3DBF /* SwiftStateMachine.swift */,
E5CD7D7027DC331900BFE5E2 /* SwiftMeshAnimation.swift */,
C3ECAC262817BE4600A81123 /* SwiftTouchEvents.swift */,
C3E2B58B2833ECFE00A8651B /* SwiftCannonGame.swift */,
);
path = SwiftUI;
sourceTree = "<group>";
Expand Down Expand Up @@ -473,6 +476,7 @@
C3745FCE282AE2320087F4AF /* hero_editor.riv in Resources */,
C3D187F9280770EA008B739A /* truck.riv in Resources */,
C9C73EA124FC471E00EF9516 /* Preview Assets.xcassets in Resources */,
C3E2B58A2833ECB500A8651B /* bullet_man_game.riv in Resources */,
042C88DD2644447500E7DBB2 /* ui_swipe_left_to_delete.riv in Resources */,
042C88E52644447500E7DBB2 /* explorer.riv in Resources */,
042C88E22644447500E7DBB2 /* f22.riv in Resources */,
Expand All @@ -497,6 +501,7 @@
files = (
C324DB5D280728690060589F /* RiveButton.swift in Sources */,
C9C73E9824FC471E00EF9516 /* AppDelegate.swift in Sources */,
C3E2B58C2833ECFE00A8651B /* SwiftCannonGame.swift in Sources */,
C9CB2F13264C92D200E7FF0D /* SwiftWidgets.swift in Sources */,
042C888E2644230700E7DBB2 /* utility.swift in Sources */,
C3D187F3280751A8008B739A /* RiveProgressBar.swift in Sources */,
Expand All @@ -508,7 +513,6 @@
C3ECAC272817BE4600A81123 /* SwiftTouchEvents.swift in Sources */,
C3ECAC2F281840A300A81123 /* ClockViewModel.swift in Sources */,
04026DC827CE3EE6002B3DBF /* SwiftLayout.swift in Sources */,
04026DCC27CE3F03002B3DBF /* SwiftLoopMode.swift in Sources */,
C9C73E9A24FC471E00EF9516 /* SceneDelegate.swift in Sources */,
04C4C83E2646FE410047E614 /* StateMachine.swift in Sources */,
C324DB5B2807216B0060589F /* RiveSlider.swift in Sources */,
Expand Down
18 changes: 18 additions & 0 deletions Example-iOS/Source/Examples/SwiftUI/SwiftCannonGame.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
//
// SwiftCannonGame.swift
// RiveExample
//
// Created by Zachary Duncan on 5/17/22.
// Copyright © 2022 Rive. All rights reserved.
//

import SwiftUI
import RiveRuntime

struct SwiftCannonGame: DismissableView {
var dismiss: () -> Void = {}

var body: some View {
RiveViewModel(fileName: "bullet_man_game", stateMachineName: "State Machine 1").view()
}
}
87 changes: 0 additions & 87 deletions Example-iOS/Source/Examples/SwiftUI/SwiftLoopMode.swift

This file was deleted.

41 changes: 38 additions & 3 deletions Example-iOS/Source/Examples/SwiftUI/SwiftSimpleAnimation.swift
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,45 @@ import RiveRuntime

struct SwiftSimpleAnimation: DismissableView {
var dismiss: () -> Void = {}
var viewModel = RiveViewModel(fileName: "truck", autoPlay: false)

var body: some View {
RiveViewModel(fileName: "truck").view()
viewModel.view()

HStack {
PlayerButton(title: "▶︎") {
viewModel.play()
}

PlayerButton(title: " ▍▍") {
viewModel.pause()
}

PlayerButton(title: "◼︎") {
viewModel.stop()
}
}
.padding()
}

struct PlayerButton: View {
var title: String
var action: ()->Void

var body: some View {
Button {
action()

} label: {
ZStack {
Color.blue
Text(title)
.foregroundColor(.white)
}
.aspectRatio(1, contentMode: .fit)
.cornerRadius(10)
.padding()
}
}
}
}


4 changes: 2 additions & 2 deletions Example-iOS/Source/ExamplesMaster.swift
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,10 @@ class ExamplesMasterTableViewController: UITableViewController {
private lazy var swiftViews: [(String, AnyView)] = [
("Touch Events!", typeErased(dismissableView: SwiftTouchEvents())),
("Widget Collection", typeErased(dismissableView: SwiftWidgets())),
("Simple Animation", typeErased(dismissableView: SwiftSimpleAnimation())),
("Animation Player", typeErased(dismissableView: SwiftSimpleAnimation())),
("Layout", typeErased(dismissableView: SwiftLayout())),
("MultipleAnimations", typeErased(dismissableView: SwiftMultipleAnimations())),
//("Loop Mode", typeErased(dismissableView: SwiftLoopMode())),
("Cannon Game", typeErased(dismissableView: SwiftCannonGame())),
("State Machine", typeErased(dismissableView: SwiftStateMachine())),
("Mesh Animation", typeErased(dismissableView: SwiftMeshAnimation()))
]
Expand Down
4 changes: 2 additions & 2 deletions Source/Components/RiveModel.swift
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ import Foundation
open class RiveModel: ObservableObject {
internal private(set) var riveFile: RiveFile
public private(set) var artboard: RiveArtboard!
public private(set) var stateMachine: RiveStateMachineInstance?
public private(set) var animation: RiveLinearAnimationInstance?
public internal(set) var stateMachine: RiveStateMachineInstance?
public internal(set) var animation: RiveLinearAnimationInstance?

public init(riveFile: RiveFile) {
self.riveFile = riveFile
Expand Down
Loading

0 comments on commit e5f1b24

Please sign in to comment.