I Want To Heal 2 build v1.0.5 code
This commit is contained in:
+22
-11
@@ -8,7 +8,6 @@ import {
|
||||
type AuthSession,
|
||||
} from './actionApi'
|
||||
import type { ActionMechanicConfig } from './actionBoss/actionEncounterConfig'
|
||||
import type { ActionCharacter } from './actionMode'
|
||||
import { ActionModeScreen } from './components/ActionModeScreen'
|
||||
import { AuthScreen } from './components/AuthScreen'
|
||||
|
||||
@@ -54,15 +53,21 @@ export function App() {
|
||||
setSession(nextSession)
|
||||
}
|
||||
|
||||
async function handleLogout() {
|
||||
await logoutAccount()
|
||||
setSession({ account: null })
|
||||
setMessage('Signed out.')
|
||||
function handlePlayOffline() {
|
||||
setSession({ account: null, offline: true })
|
||||
setMessage('')
|
||||
setScreenKey((current) => current + 1)
|
||||
}
|
||||
|
||||
function syncCharacter(character: ActionCharacter) {
|
||||
async function handleLogout() {
|
||||
if (!session?.offline) await logoutAccount()
|
||||
setSession({ account: null })
|
||||
setMessage(session?.offline ? 'Offline mode ended.' : 'Signed out.')
|
||||
}
|
||||
|
||||
function syncCharacter() {
|
||||
if (!session?.account) return
|
||||
pushCloudSave({ ...localCloudSave(), character }).catch(() => null)
|
||||
pushCloudSave(localCloudSave()).catch(() => null)
|
||||
}
|
||||
|
||||
function syncMechanics(mechanics: ActionMechanicConfig) {
|
||||
@@ -84,18 +89,24 @@ export function App() {
|
||||
)
|
||||
}
|
||||
|
||||
if (!session?.account) {
|
||||
return <AuthScreen onAuthenticated={handleAuthenticated} serverMessage={message} />
|
||||
if (!session?.account && !session?.offline) {
|
||||
return (
|
||||
<AuthScreen
|
||||
onAuthenticated={handleAuthenticated}
|
||||
onPlayOffline={handlePlayOffline}
|
||||
serverMessage={message}
|
||||
/>
|
||||
)
|
||||
}
|
||||
|
||||
return (
|
||||
<ActionModeScreen
|
||||
key={screenKey}
|
||||
account={session.account}
|
||||
account={session.account ?? undefined}
|
||||
authActionLabel={session.offline ? 'Sign In' : 'Logout'}
|
||||
onCharacterSaved={syncCharacter}
|
||||
onLogout={handleLogout}
|
||||
onMechanicsSaved={syncMechanics}
|
||||
serverMessage={message}
|
||||
/>
|
||||
)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user