summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--app/src/main/AndroidManifest.xml6
-rw-r--r--app/src/main/java/com/example/alcagotchi/MainActivity.kt6
-rw-r--r--app/src/main/java/com/example/alcagotchi/PartyActivity.kt168
3 files changed, 177 insertions, 3 deletions
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d4a9b12..6a9930c 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -58,7 +58,7 @@
</intent-filter>
</activity>
<activity
- android:name=".RequestTest"
+ android:name=".ShopActivity"
android:exported="true"
android:label="@string/app_name"
android:theme="@style/Theme.AlcaGotchi">
@@ -69,7 +69,7 @@
</intent-filter>
</activity>
<activity
- android:name=".ShopActivity"
+ android:name=".DrivingActivity"
android:exported="true"
android:label="@string/app_name"
android:theme="@style/Theme.AlcaGotchi">
@@ -80,7 +80,7 @@
</intent-filter>
</activity>
<activity
- android:name=".DrivingActivity"
+ android:name=".PartyActivity"
android:exported="true"
android:label="@string/app_name"
android:theme="@style/Theme.AlcaGotchi">
diff --git a/app/src/main/java/com/example/alcagotchi/MainActivity.kt b/app/src/main/java/com/example/alcagotchi/MainActivity.kt
index c29f0bc..9dbf72d 100644
--- a/app/src/main/java/com/example/alcagotchi/MainActivity.kt
+++ b/app/src/main/java/com/example/alcagotchi/MainActivity.kt
@@ -173,6 +173,12 @@ fun GreetingText(viewModel: MainViewModel, message: String, from: String, modifi
}) {
Text("Earn money")
}
+ Button(onClick = {
+ val intent = Intent(context, PartyActivity::class.java)
+ context.startActivity(intent)
+ }) {
+ Text("Start a Party")
+ }
} else {
Text(
text = "connecting... plz wait",
diff --git a/app/src/main/java/com/example/alcagotchi/PartyActivity.kt b/app/src/main/java/com/example/alcagotchi/PartyActivity.kt
index 9fb0cb6..38ade66 100644
--- a/app/src/main/java/com/example/alcagotchi/PartyActivity.kt
+++ b/app/src/main/java/com/example/alcagotchi/PartyActivity.kt
@@ -1,2 +1,170 @@
package com.example.alcagotchi
+/*
+ * Copyright (C) 2023 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import android.app.Activity
+import android.app.AlertDialog
+import android.content.Context
+import android.os.Bundle
+import android.provider.Telephony.Mms.Part
+import androidx.activity.ComponentActivity
+import androidx.activity.compose.setContent
+import androidx.compose.foundation.Image
+import androidx.compose.foundation.layout.Arrangement
+import androidx.compose.foundation.layout.Box
+import androidx.compose.foundation.layout.Column
+import androidx.compose.foundation.layout.fillMaxSize
+import androidx.compose.foundation.layout.padding
+import androidx.compose.material3.Button
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.Surface
+import androidx.compose.material3.Text
+import androidx.compose.material3.TextField
+import androidx.compose.runtime.Composable
+import androidx.compose.runtime.getValue
+import androidx.compose.runtime.mutableIntStateOf
+import androidx.compose.runtime.mutableStateOf
+import androidx.compose.runtime.remember
+import androidx.compose.runtime.setValue
+import androidx.compose.ui.Alignment
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.graphics.Color
+import androidx.compose.ui.layout.ContentScale
+import androidx.compose.ui.platform.LocalContext
+import androidx.compose.ui.res.painterResource
+import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.tooling.preview.Preview
+import androidx.compose.ui.unit.dp
+import androidx.compose.ui.unit.sp
+import androidx.lifecycle.ViewModel
+import androidx.lifecycle.viewModelScope
+import androidx.lifecycle.viewmodel.compose.viewModel
+import com.example.alcagotchi.ui.theme.AlcaGotchiTheme
+import kotlinx.coroutines.launch
+import kotlinx.coroutines.runBlocking
+
+class PartyActivity() : ComponentActivity() {
+ override fun onCreate(savedInstanceState: Bundle?) {
+ super.onCreate(savedInstanceState)
+ setContent {
+ AlcaGotchiTheme {
+ Surface(
+ modifier = Modifier.fillMaxSize(),
+ color = MaterialTheme.colorScheme.background
+ ) {
+ PartyGreeting(
+ )
+ }
+ }
+ }
+ }
+}
+class TextFieldState(){
+ var text: String by mutableStateOf("")
+}
+
+@Composable
+fun EditNumberField(modifier: Modifier = Modifier) {
+ var amountInput = remember { TextFieldState()}
+ TextField(
+ value = amountInput.text,
+ onValueChange = { amountInput.text = it},
+ modifier = modifier
+ )
+}
+
+class PartyViewModel : ViewModel() {
+ val coin = mutableIntStateOf(0)
+ var amountInput = mutableIntStateOf(0)
+
+ fun name(context: Context) {
+ val alcoGotchi = AlcoGotchi.getInstance()
+ viewModelScope.launch {
+ runBlocking {
+ try {
+ alcoGotchi.postDrive()
+ } catch (e: Exception) {
+ val alertDialog = AlertDialog.Builder(context)
+
+ alertDialog.apply {
+ setTitle("no")
+ setMessage(e.toString())
+
+ }.create().show()
+ }
+
+ coin.intValue = alcoGotchi.coins
+ }
+ }
+ }
+}
+
+
+@Composable
+fun PartyOptions(viewModel: PartyViewModel, modifier: Modifier = Modifier) {
+ val coin by viewModel.coin
+ var amountInput = remember { TextFieldState()}
+
+ Column(
+ verticalArrangement = Arrangement.Center,
+ horizontalAlignment = Alignment.CenterHorizontally
+ ) {
+ val context = LocalContext.current as Activity
+
+ Text(
+ text = "What is your name?",
+ fontSize = 36.sp,
+ color = Color(0xFF00FF00),
+ modifier = Modifier
+ .padding(top = 16.dp)
+ .padding(end = 16.dp)
+ )
+ EditNumberField(Modifier)
+// Button(onClick = { viewModel.name(amountInput.text, context) }) {
+// Text("Enter name")
+// }
+
+ }
+}
+
+@Composable
+fun PartyGreeting(modifier: Modifier = Modifier) {
+ // Create a box to overlap image and texts
+
+ Box(modifier) {
+ Image(
+ painter = painterResource(id = R.drawable.driving),
+ contentDescription = null,
+ contentScale = ContentScale.Crop,
+ alpha = 1F,
+ modifier = Modifier.fillMaxSize()
+
+
+ )
+ PartyOptions(viewModel = PartyViewModel())
+ }
+}
+
+@Preview(showBackground = false)
+@Composable
+private fun PartyPreview() {
+ AlcaGotchiTheme {
+ PartyActivity(
+ )
+ }
+}
+