Created
October 14, 2024 00:07
-
-
Save r0x0d/77a2358fc649565e9065863fa0534125 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/app/build.gradle.kts b/app/build.gradle.kts | |
index fe80fba..894323b 100644 | |
--- a/app/build.gradle.kts | |
+++ b/app/build.gradle.kts | |
@@ -44,6 +44,7 @@ android { | |
} | |
buildFeatures { | |
compose = true | |
+ viewBinding = true | |
} | |
composeOptions { | |
kotlinCompilerExtensionVersion = "1.5.1" | |
@@ -53,11 +54,21 @@ android { | |
excludes += "/META-INF/{AL2.0,LGPL2.1}" | |
} | |
} | |
+ compileOptions { | |
+ sourceCompatibility = JavaVersion.VERSION_1_8 | |
+ targetCompatibility = JavaVersion.VERSION_1_8 | |
+ } | |
} | |
dependencies { | |
implementation(project(":dndback")) | |
+ implementation(libs.material) | |
+ implementation(libs.androidx.appcompat) | |
+ implementation(libs.androidx.constraintlayout) | |
+ implementation(libs.androidx.navigation.fragment.ktx) | |
+ implementation(libs.androidx.navigation.ui.ktx) | |
+ implementation(libs.androidx.navigation.compose) | |
//room dependencias | |
val room_version = "2.6.1" | |
implementation("androidx.room:room-runtime:$room_version") | |
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml | |
index c0f3362..4890ac3 100644 | |
--- a/app/src/main/AndroidManifest.xml | |
+++ b/app/src/main/AndroidManifest.xml | |
@@ -12,6 +12,10 @@ | |
android:supportsRtl="true" | |
android:theme="@style/Theme.DdmFrontJetpackCompose" | |
tools:targetApi="31"> | |
+ <activity | |
+ android:name=".ResultadosActivity" | |
+ android:exported="false" | |
+ android:theme="@style/Theme.DdmFrontJetpackCompose" /> | |
<activity | |
android:name=".MainActivity" | |
android:exported="true" | |
diff --git a/app/src/main/java/up/dndfront/Atributos.kt b/app/src/main/java/up/dndfront/Atributos.kt | |
index 1a1ad0f..0b6fdd2 100644 | |
--- a/app/src/main/java/up/dndfront/Atributos.kt | |
+++ b/app/src/main/java/up/dndfront/Atributos.kt | |
@@ -11,14 +11,14 @@ class Atributos { | |
var pontos = 27 | |
fun setAtributo(atributo: Int) { | |
- if(atributo.toInt() < 8 || atributo.toInt() > 15) | |
+ if (atributo.toInt() < 8 || atributo.toInt() > 15) | |
throw IllegalArgumentException("Valor deve estar entre 8 e 15") | |
- else if (atributo > pontos && atributo !=8) | |
- throw IllegalArgumentException("Pontos insuficientes") | |
- else if(atributo != 8) | |
- // Não utilizei a contagem correta de custo de pontos, lembre que a partir de 13 o custo é 2 | |
- // esta lógica não está correta, é só um exemplo, adapte com o teu código | |
- pontos -= atributo-8 | |
+ else if (atributo > pontos && atributo != 8) | |
+ throw IllegalArgumentException("Pontos insuficientes") | |
+ else if (atributo != 8) | |
+ // Não utilizei a contagem correta de custo de pontos, lembre que a partir de 13 o custo é 2 | |
+ // esta lógica não está correta, é só um exemplo, adapte com o teu código | |
+ pontos -= atributo - 8 | |
} | |
fun getPontosDisponiveis(): Int { | |
diff --git a/app/src/main/java/up/dndfront/MainActivity.kt b/app/src/main/java/up/dndfront/MainActivity.kt | |
index 2b232cc..9a018b7 100644 | |
--- a/app/src/main/java/up/dndfront/MainActivity.kt | |
+++ b/app/src/main/java/up/dndfront/MainActivity.kt | |
@@ -1,6 +1,7 @@ | |
package up.dndfront | |
-import up.dndback.Personagem | |
+import Classes | |
+import Racas | |
import android.os.Bundle | |
import androidx.activity.ComponentActivity | |
import androidx.activity.compose.setContent | |
@@ -10,144 +11,101 @@ import androidx.compose.foundation.layout.Box | |
import androidx.compose.foundation.layout.Column | |
import androidx.compose.foundation.layout.Row | |
import androidx.compose.foundation.layout.Spacer | |
-import androidx.compose.foundation.layout.fillMaxSize | |
import androidx.compose.foundation.layout.fillMaxWidth | |
-import androidx.compose.foundation.layout.height | |
import androidx.compose.foundation.layout.padding | |
import androidx.compose.foundation.layout.width | |
-import androidx.compose.foundation.text.KeyboardOptions | |
+import androidx.compose.material.icons.Icons | |
+import androidx.compose.material.icons.filled.ArrowDropDown | |
+import androidx.compose.material3.AlertDialog | |
import androidx.compose.material3.Button | |
-import androidx.compose.material3.OutlinedTextField | |
-import androidx.compose.material3.Snackbar | |
+import androidx.compose.material3.DropdownMenu | |
+import androidx.compose.material3.DropdownMenuItem | |
+import androidx.compose.material3.Icon | |
+import androidx.compose.material3.MaterialTheme | |
+import androidx.compose.material3.Slider | |
import androidx.compose.material3.Text | |
+import androidx.compose.material3.TextButton | |
+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.focus.onFocusChanged | |
-import androidx.compose.ui.text.input.KeyboardType | |
import androidx.compose.ui.unit.dp | |
import androidx.compose.ui.unit.sp | |
-import androidx.lifecycle.lifecycleScope | |
-import kotlinx.coroutines.launch | |
-import up.dndfront.data.AtributosDAO | |
-import up.dndfront.data.AtributosDB | |
-import androidx.compose.material3.DropdownMenu | |
-import androidx.compose.material3.DropdownMenuItem | |
-import androidx.compose.material3.MaterialTheme | |
-import androidx.compose.material3.Slider | |
-import up.dndback.classes.iClasses | |
+import up.dndback.Personagem | |
class MainActivity : ComponentActivity() { | |
- private var atributos = Atributos() | |
- private lateinit var atributosDAO: AtributosDAO | |
- lateinit var selectedRaca: racas.iRacas | |
- lateinit var selectedClasse: iClasses | |
+// private var atributos = Atributos() | |
+// private lateinit var atributosDAO: AtributosDAO | |
- val personagem = Personagem( | |
- nome = "Adam o destruidor de fandangos", //nome.toString(), | |
- raca = selectedRaca!!, | |
- classe = selectedClasse!!, | |
- ) | |
+ var personagem = Personagem() | |
override fun onCreate(savedInstanceState: Bundle?) { | |
super.onCreate(savedInstanceState) | |
- val db = AtributosDB.getDatabase(this) | |
- atributosDAO = db.atributosDAO() | |
- | |
setContent { | |
- val personagem = remember { | |
- Personagem( | |
- nome = "Meu Personagem", | |
- raca = null, | |
- classe = null | |
- ) | |
- } | |
+ MainScreen() | |
+ } | |
+ } | |
+ @Composable | |
+ fun MainScreen() { | |
+ Column { | |
+ UsernameInputScreen() | |
DropDownRacasScreen() // Exibe a seleção de raças | |
DropDownClassesScreen() // Exibe a seleção de classes | |
- | |
- AtributosScreen(personagem) { novosAtributos -> | |
- saveAtributos(personagem, novosAtributos) | |
- } | |
- | |
- ExibirAtributosScreen() // Exibe os atributos já salvos | |
} | |
- | |
- | |
- fun saveAtributos(personagem: Personagem, novosAtributos: Map<String, Int>) { | |
- // Iterar sobre os novos atributos e atualizar o personagem | |
- for ((atributo, valor) in novosAtributos) { | |
- personagem.aumentarAtributo(atributo, valor) | |
+ AtributosScreen { novosAtributos -> | |
+ saveAtributos(novosAtributos) | |
} | |
- | |
- // Após atualizar os atributos, salvar os dados no banco | |
-// lifecycleScope.launch { | |
-// atributosDAO.insert(atributosFromPersonagem(personagem)) | |
-// } | |
-// } | |
- | |
-// fun atributosFromPersonagem(personagem: Personagem): AtributosEntity { | |
-// return AtributosEntity( | |
-// forca = personagem.forca, | |
-// destreza = personagem.destreza, | |
-// constituicao = personagem.constituicao, | |
-// inteligencia = personagem.inteligencia, | |
-// sabedoria = personagem.sabedoria, | |
-// carisma = personagem.carisma, | |
-// pontosDeVida = personagem.pontosDeVida, | |
-// pontosDisponiveis = personagem.pontosDisponiveis | |
-// ) | |
} | |
- | |
@Composable | |
fun DropDownRacasScreen() { | |
- | |
- val isDropDownExpanded = remember { | |
- mutableStateOf(false) | |
- } | |
- | |
- val itemPosition = remember { | |
- mutableStateOf(0) | |
- } | |
- | |
+ val isDropDownExpanded = remember { mutableStateOf(false) } | |
+ val itemPosition = remember { mutableIntStateOf(0) } | |
val lista_de_racas = Racas.get_racas() | |
- // TODO: Mover a coluna do dropdown para cima, antes dos inputs | |
- Column( | |
- modifier = Modifier.fillMaxSize(), | |
- horizontalAlignment = Alignment.CenterHorizontally, | |
- verticalArrangement = Arrangement.Center | |
+ personagem.raca = lista_de_racas[itemPosition.value] | |
+ | |
+ Row( | |
+ modifier = Modifier | |
+ .fillMaxWidth() | |
+ .padding(16.dp), | |
+ verticalAlignment = Alignment.CenterVertically, | |
+ horizontalArrangement = Arrangement.SpaceBetween | |
) { | |
+ Text(text = "Escolha sua raça: ", fontSize = 22.sp) | |
Box { | |
- Row( | |
- horizontalArrangement = Arrangement.Center, | |
+ Row(horizontalArrangement = Arrangement.Center, | |
verticalAlignment = Alignment.CenterVertically, | |
modifier = Modifier.clickable { | |
isDropDownExpanded.value = true | |
- } | |
- ) { | |
- Text(text = lista_de_racas[itemPosition.value].nome) | |
- } | |
- DropdownMenu( | |
- expanded = isDropDownExpanded.value, | |
- onDismissRequest = { | |
- isDropDownExpanded.value = false | |
}) { | |
+ Text(text = lista_de_racas[itemPosition.value].nome, fontSize = 22.sp) | |
+ // Add a spacer between text and icon | |
+ Spacer(modifier = Modifier.width(8.dp)) | |
+ | |
+ // Caret icon (down arrow) | |
+ Icon( | |
+ imageVector = Icons.Default.ArrowDropDown, | |
+ contentDescription = "DropDown Icon" | |
+ ) | |
+ } | |
+ | |
+ DropdownMenu(expanded = isDropDownExpanded.value, onDismissRequest = { | |
+ isDropDownExpanded.value = false | |
+ }) { | |
lista_de_racas.forEachIndexed { index, raca -> | |
- DropdownMenuItem(text = { | |
- Text(text = raca.nome) | |
- }, | |
- onClick = { | |
- isDropDownExpanded.value = false | |
- itemPosition.value = index | |
- selectedRaca = lista_de_racas[itemPosition.value] | |
- }) | |
+ DropdownMenuItem(text = { Text(text = raca.nome) }, onClick = { | |
+ isDropDownExpanded.value = false | |
+ itemPosition.value = index | |
+ personagem.raca = lista_de_racas[itemPosition.value] | |
+ }) | |
} | |
} | |
} | |
@@ -156,71 +114,71 @@ class MainActivity : ComponentActivity() { | |
@Composable | |
fun DropDownClassesScreen() { | |
- | |
val isDropDownExpanded = remember { | |
mutableStateOf(false) | |
} | |
val itemPosition = remember { | |
- mutableStateOf(0) | |
+ mutableIntStateOf(0) | |
} | |
val lista_de_classes = Classes.get_classes() | |
- // TODO: Mover a coluna do dropdown para cima, antes dos inputs | |
- Column( | |
- modifier = Modifier.fillMaxSize(), | |
- horizontalAlignment = Alignment.CenterHorizontally, | |
- verticalArrangement = Arrangement.Center | |
+ // Inicializa a classe como sendo o primeiro valor da lista | |
+ personagem.classe = lista_de_classes[itemPosition.value] | |
+ | |
+ Row( | |
+ modifier = Modifier | |
+ .fillMaxWidth(), | |
+ verticalAlignment = Alignment.CenterVertically, | |
+ horizontalArrangement = Arrangement.SpaceBetween | |
) { | |
+ Text(text = " Escolha sua classe: ", fontSize = 22.sp) | |
Box { | |
- Row( | |
- horizontalArrangement = Arrangement.Center, | |
+ Row(horizontalArrangement = Arrangement.Center, | |
verticalAlignment = Alignment.CenterVertically, | |
- modifier = Modifier.clickable { | |
- isDropDownExpanded.value = true | |
- } | |
- ) { | |
- Text(text = lista_de_classes[itemPosition.value].nome) | |
+ modifier = Modifier | |
+ .clickable { isDropDownExpanded.value = true } | |
+ .padding(start = 8.dp)) { | |
+ Text(text = lista_de_classes[itemPosition.value].nome, fontSize = 22.sp) | |
+ | |
+ Spacer(modifier = Modifier.width(8.dp)) | |
+ | |
+ Icon( | |
+ imageVector = Icons.Default.ArrowDropDown, | |
+ contentDescription = "DropDown Icon" | |
+ ) | |
} | |
- DropdownMenu( | |
- expanded = isDropDownExpanded.value, | |
- onDismissRequest = { | |
- isDropDownExpanded.value = false | |
- }) { | |
- lista_de_classes.forEachIndexed { index, raca -> | |
- DropdownMenuItem(text = { | |
- Text(text = raca.nome) | |
- }, | |
- onClick = { | |
- isDropDownExpanded.value = false | |
- itemPosition.value = index | |
- selectedClasse = lista_de_classes[itemPosition.value] | |
- }) | |
+ | |
+ DropdownMenu(expanded = isDropDownExpanded.value, onDismissRequest = { | |
+ isDropDownExpanded.value = false | |
+ }) { | |
+ lista_de_classes.forEachIndexed { index, classe -> | |
+ DropdownMenuItem(text = { Text(text = classe.nome) }, onClick = { | |
+ isDropDownExpanded.value = false | |
+ itemPosition.value = index | |
+ personagem.classe = lista_de_classes[itemPosition.value] | |
+ }) | |
} | |
} | |
} | |
} | |
} | |
- | |
@Composable | |
- fun ExibirAtributosScreen(personagem: Personagem) { | |
- Column { | |
- Text(text = "Nome: ${personagem.nome}", fontSize = 18.sp) | |
- Text(text = "Raça: ${personagem.raca?.nome ?: "N/A"}", fontSize = 18.sp) | |
- Text(text = "Classe: ${personagem.classe?.nome ?: "N/A"}", fontSize = 18.sp) | |
- Text(text = "Força: ${personagem.forca}", fontSize = 18.sp) | |
- Text(text = "Destreza: ${personagem.destreza}", fontSize = 18.sp) | |
- Text(text = "Constituição: ${personagem.constituicao}", fontSize = 18.sp) | |
- Text(text = "Inteligência: ${personagem.inteligencia}", fontSize = 18.sp) | |
- Text(text = "Sabedoria: ${personagem.sabedoria}", fontSize = 18.sp) | |
- Text(text = "Carisma: ${personagem.carisma}", fontSize = 18.sp) | |
- Text(text = "Pontos de Vida: ${personagem.pontosDeVida}", fontSize = 18.sp) | |
- } | |
- } | |
- | |
+ fun UsernameInputScreen() { | |
+ var nome by remember { mutableStateOf("") } | |
+ TextField( | |
+ value = nome, | |
+ onValueChange = { nome = it }, | |
+ label = { Text(text = "Digite seu nome") }, | |
+ modifier = Modifier | |
+ .fillMaxWidth() | |
+ .padding(bottom = 16.dp) // Add some padding below the TextField | |
+ ) | |
+ | |
+ personagem.nome = nome | |
} | |
@Composable | |
@@ -231,28 +189,40 @@ class MainActivity : ComponentActivity() { | |
// Slider que permite alterar o valor | |
Slider( | |
- value = valorAtual.toFloat(), | |
- onValueChange = { novoValor -> | |
+ value = valorAtual.toFloat(), onValueChange = { novoValor -> | |
onValueChange(novoValor.toInt()) // Passa o valor atualizado para a função de callback | |
- }, | |
- valueRange = 8f..15f, // Define o intervalo do valor permitido | |
+ }, valueRange = 8f..15f, // Define o intervalo do valor permitido | |
steps = 7, // Define os passos (quantidade de valores permitidos entre o intervalo) | |
modifier = Modifier.padding(horizontal = 16.dp) // Padding para afastar o slider das bordas | |
) | |
} | |
} | |
+ private fun saveAtributos(novosAtributos: Map<String, Int>) { | |
+ // Iterar sobre os novos atributos e atualizar o personagem | |
+ for ((atributo, valor) in novosAtributos) { | |
+ personagem.aumentarAtributo(atributo, valor) | |
+ } | |
+ | |
+ var pontos_de_vida = personagem.classe?.calcularPontosDeVida(personagem.constituicao) | |
+ if (pontos_de_vida != null) { | |
+ personagem.pontosDeVida += pontos_de_vida | |
+ } | |
+ } | |
@Composable | |
- fun AtributosScreen(personagem: Personagem, onSaveClick: (Map<String, Int>) -> Unit) { | |
- var forca by remember { mutableStateOf(personagem.forca) } | |
- var destreza by remember { mutableStateOf(personagem.destreza) } | |
- var constituicao by remember { mutableStateOf(personagem.constituicao) } | |
- var inteligencia by remember { mutableStateOf(personagem.inteligencia) } | |
- var sabedoria by remember { mutableStateOf(personagem.sabedoria) } | |
- var carisma by remember { mutableStateOf(personagem.carisma) } | |
+ fun AtributosScreen(onSaveClick: (Map<String, Int>) -> Unit) { | |
+ var forca by remember { mutableIntStateOf(personagem.forca) } | |
+ var destreza by remember { mutableIntStateOf(personagem.destreza) } | |
+ var constituicao by remember { mutableIntStateOf(personagem.constituicao) } | |
+ var inteligencia by remember { mutableIntStateOf(personagem.inteligencia) } | |
+ var sabedoria by remember { mutableIntStateOf(personagem.sabedoria) } | |
+ var carisma by remember { mutableIntStateOf(personagem.carisma) } | |
+ var showDialog by remember { mutableStateOf(false) } | |
- Column { | |
+ Column( | |
+ modifier = Modifier.padding(start = 16.dp, top = 164.dp) // Add padding to the top | |
+ ) { | |
// Exibir sliders ou campos de texto para modificar os atributos | |
SliderAtributo("Força", forca) { novoValor -> forca = novoValor } | |
SliderAtributo("Destreza", destreza) { novoValor -> destreza = novoValor } | |
@@ -277,87 +247,49 @@ class MainActivity : ComponentActivity() { | |
"carisma" to carisma | |
) | |
onSaveClick(novosAtributos) // Chama a função para salvar | |
+ showDialog = true | |
}) { | |
Text("Salvar Atributos") | |
} | |
- } | |
- } | |
- | |
- @Composable | |
- fun AtributoInputRow( | |
- label: String, | |
- atributos: Atributos, | |
- updatePontos: () -> Unit, | |
- onError: (String) -> Unit | |
- ) { | |
- var textValue by remember { mutableStateOf("") } | |
- | |
- Row( | |
- modifier = Modifier.fillMaxWidth(), | |
- horizontalArrangement = Arrangement.SpaceBetween, | |
- verticalAlignment = Alignment.CenterVertically // Alinhamento vertical centralizado | |
- ) { | |
- // Coluna de Atributos | |
- Text(text = label, modifier = Modifier.weight(1f)) | |
- | |
- // Campo de entrada de número inteiro | |
- OutlinedTextField( | |
- value = textValue, | |
- onValueChange = { newValue -> | |
- // Permitir apenas números | |
- if (newValue.all { it.isDigit() }) { | |
- textValue = newValue | |
- } | |
- }, | |
- keyboardOptions = KeyboardOptions.Default.copy( | |
- keyboardType = KeyboardType.Number | |
- ), | |
- modifier = Modifier | |
- .weight(1f) | |
- .width(50.dp) | |
- .onFocusChanged { focusState -> | |
- if (!focusState.isFocused && textValue.isNotEmpty()) { | |
- try { | |
- val valor = textValue.toInt() | |
- atributos.setAtributo(valor) // Envia o valor para setAtributo | |
- updatePontos() // Atualiza os pontos | |
- } catch (e: IllegalArgumentException) { | |
- onError(e.message ?: "Erro desconhecido") | |
- textValue = "" // Limpa o campo em caso de erro | |
- } catch (e: NumberFormatException) { | |
- onError("Por favor, insira um número válido.") | |
- textValue = "" // Limpa o campo em caso de erro | |
- } | |
+ if (showDialog) { | |
+ // Alert dialog para confirmar a ação | |
+ AlertDialog( | |
+ onDismissRequest = { showDialog = false }, | |
+ title = { Text("Informações do Personagem") }, | |
+ text = { | |
+ Column { | |
+ Text(text = "Nome: ${personagem.nome}", fontSize = 18.sp) | |
+ Text(text = "Raça: ${personagem.raca?.nome ?: "N/A"}", fontSize = 18.sp) | |
+ Text( | |
+ text = "Classe: ${personagem.classe?.nome ?: "N/A"}", | |
+ fontSize = 18.sp | |
+ ) | |
+ Text(text = "Força: ${personagem.forca}", fontSize = 18.sp) | |
+ Text(text = "Destreza: ${personagem.destreza}", fontSize = 18.sp) | |
+ Text( | |
+ text = "Constituição: ${personagem.constituicao}", | |
+ fontSize = 18.sp | |
+ ) | |
+ Text( | |
+ text = "Inteligência: ${personagem.inteligencia}", | |
+ fontSize = 18.sp | |
+ ) | |
+ Text(text = "Sabedoria: ${personagem.sabedoria}", fontSize = 18.sp) | |
+ Text(text = "Carisma: ${personagem.carisma}", fontSize = 18.sp) | |
+ Text( | |
+ text = "Pontos de Vida: ${personagem.pontosDeVida}", | |
+ fontSize = 18.sp | |
+ ) | |
+ } | |
+ }, | |
+ confirmButton = { | |
+ TextButton(onClick = { showDialog = false }) { | |
+ Text("OK") | |
} | |
} | |
- ) | |
- | |
- // Coluna Bônus de Raça | |
- Text( | |
- text = "0", | |
- modifier = Modifier.weight(1f), | |
- textAlign = androidx.compose.ui.text.style.TextAlign.Center | |
- ) | |
- | |
- // Coluna Mod | |
- Text( | |
- text = "0", | |
- modifier = Modifier.weight(1f), | |
- textAlign = androidx.compose.ui.text.style.TextAlign.Center | |
- ) | |
- } | |
- } | |
- | |
- @Composable | |
- fun FilledButtonPersistencia(onClick: () -> Unit) { | |
- Button(onClick = { onClick() }) { | |
- Text("Persistência") | |
- | |
+ ) | |
+ } | |
} | |
} | |
- | |
- fun showMessage(message: String, callback: (String) -> Unit) { | |
- callback(message) | |
- } | |
- } | |
+} | |
diff --git a/app/src/main/java/up/dndfront/data/AtributosDB.kt b/app/src/main/java/up/dndfront/data/AtributosDB.kt | |
index 7e8fe30..2e96dcf 100644 | |
--- a/app/src/main/java/up/dndfront/data/AtributosDB.kt | |
+++ b/app/src/main/java/up/dndfront/data/AtributosDB.kt | |
@@ -7,17 +7,17 @@ import androidx.room.RoomDatabase | |
import up.dndfront.Atributos | |
@Database(entities = [Atributos::class], version = 1, exportSchema = false) | |
-abstract class AtributosDB: RoomDatabase() { | |
+abstract class AtributosDB : RoomDatabase() { | |
abstract fun atributosDAO(): AtributosDAO | |
- companion object{ | |
+ companion object { | |
@Volatile | |
- private var INSTANCIA: AtributosDB? =null | |
+ private var INSTANCIA: AtributosDB? = null | |
- fun getDatabase(context: Context): AtributosDB{ | |
- return INSTANCIA ?: synchronized(this){ | |
+ fun getDatabase(context: Context): AtributosDB { | |
+ return INSTANCIA ?: synchronized(this) { | |
val instancia = Room.databaseBuilder( | |
context.applicationContext, | |
AtributosDB::class.java, | |
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml | |
index eec7e82..5d7328d 100644 | |
--- a/app/src/main/res/values/strings.xml | |
+++ b/app/src/main/res/values/strings.xml | |
@@ -1,3 +1,45 @@ | |
<resources> | |
<string name="app_name">DnD</string> | |
+ <!-- Strings used for fragments for navigation --> | |
+ <string name="first_fragment_label">First Fragment</string> | |
+ <string name="second_fragment_label">Second Fragment</string> | |
+ <string name="next">Next</string> | |
+ <string name="previous">Previous</string> | |
+ | |
+ <string name="lorem_ipsum"> | |
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam in scelerisque sem. Mauris | |
+ volutpat, dolor id interdum ullamcorper, risus dolor egestas lectus, sit amet mattis purus | |
+ dui nec risus. Maecenas non sodales nisi, vel dictum dolor. Class aptent taciti sociosqu ad | |
+ litora torquent per conubia nostra, per inceptos himenaeos. Suspendisse blandit eleifend | |
+ diam, vel rutrum tellus vulputate quis. Aliquam eget libero aliquet, imperdiet nisl a, | |
+ ornare ex. Sed rhoncus est ut libero porta lobortis. Fusce in dictum tellus.\n\n | |
+ Suspendisse interdum ornare ante. Aliquam nec cursus lorem. Morbi id magna felis. Vivamus | |
+ egestas, est a condimentum egestas, turpis nisl iaculis ipsum, in dictum tellus dolor sed | |
+ neque. Morbi tellus erat, dapibus ut sem a, iaculis tincidunt dui. Interdum et malesuada | |
+ fames ac ante ipsum primis in faucibus. Curabitur et eros porttitor, ultricies urna vitae, | |
+ molestie nibh. Phasellus at commodo eros, non aliquet metus. Sed maximus nisl nec dolor | |
+ bibendum, vel congue leo egestas.\n\n | |
+ Sed interdum tortor nibh, in sagittis risus mollis quis. Curabitur mi odio, condimentum sit | |
+ amet auctor at, mollis non turpis. Nullam pretium libero vestibulum, finibus orci vel, | |
+ molestie quam. Fusce blandit tincidunt nulla, quis sollicitudin libero facilisis et. Integer | |
+ interdum nunc ligula, et fermentum metus hendrerit id. Vestibulum lectus felis, dictum at | |
+ lacinia sit amet, tristique id quam. Cras eu consequat dui. Suspendisse sodales nunc ligula, | |
+ in lobortis sem porta sed. Integer id ultrices magna, in luctus elit. Sed a pellentesque | |
+ est.\n\n | |
+ Aenean nunc velit, lacinia sed dolor sed, ultrices viverra nulla. Etiam a venenatis nibh. | |
+ Morbi laoreet, tortor sed facilisis varius, nibh orci rhoncus nulla, id elementum leo dui | |
+ non lorem. Nam mollis ipsum quis auctor varius. Quisque elementum eu libero sed commodo. In | |
+ eros nisl, imperdiet vel imperdiet et, scelerisque a mauris. Pellentesque varius ex nunc, | |
+ quis imperdiet eros placerat ac. Duis finibus orci et est auctor tincidunt. Sed non viverra | |
+ ipsum. Nunc quis augue egestas, cursus lorem at, molestie sem. Morbi a consectetur ipsum, a | |
+ placerat diam. Etiam vulputate dignissim convallis. Integer faucibus mauris sit amet finibus | |
+ convallis.\n\n | |
+ Phasellus in aliquet mi. Pellentesque habitant morbi tristique senectus et netus et | |
+ malesuada fames ac turpis egestas. In volutpat arcu ut felis sagittis, in finibus massa | |
+ gravida. Pellentesque id tellus orci. Integer dictum, lorem sed efficitur ullamcorper, | |
+ libero justo consectetur ipsum, in mollis nisl ex sed nisl. Donec maximus ullamcorper | |
+ sodales. Praesent bibendum rhoncus tellus nec feugiat. In a ornare nulla. Donec rhoncus | |
+ libero vel nunc consequat, quis tincidunt nisl eleifend. Cras bibendum enim a justo luctus | |
+ vestibulum. Fusce dictum libero quis erat maximus, vitae volutpat diam dignissim. | |
+ </string> | |
</resources> | |
\ No newline at end of file | |
diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml | |
index 2df73e6..9f9c635 100644 | |
--- a/app/src/main/res/values/themes.xml | |
+++ b/app/src/main/res/values/themes.xml | |
@@ -2,4 +2,9 @@ | |
<resources> | |
<style name="Theme.DdmFrontJetpackCompose" parent="android:Theme.Material.Light.NoActionBar" /> | |
+ <!-- Base application theme. --> | |
+ <style name="Base.Theme.DdmFrontJetpackCompose" parent="Theme.Material3.DayNight.NoActionBar"> | |
+ <!-- Customize your light theme here. --> | |
+ <!-- <item name="colorPrimary">@color/my_light_primary</item> --> | |
+ </style> | |
</resources> | |
\ No newline at end of file | |
diff --git a/dndback/src/main/java/up/dndback/Personagem.kt b/dndback/src/main/java/up/dndback/Personagem.kt | |
index 736b21a..b6ff22a 100644 | |
--- a/dndback/src/main/java/up/dndback/Personagem.kt | |
+++ b/dndback/src/main/java/up/dndback/Personagem.kt | |
@@ -1,20 +1,9 @@ | |
package up.dndback | |
+ | |
import up.dndback.classes.iClasses | |
-import java.util.* | |
- | |
-class Personagem( | |
- val nome: String, | |
- val raca: racas.iRacas?, | |
- val classe: iClasses?, | |
- var forca: Int = 8, | |
- var destreza: Int = 8, | |
- var constituicao: Int = 8, | |
- var inteligencia: Int = 8, | |
- var sabedoria: Int = 8, | |
- var carisma: Int = 8, | |
- var pontosDeVida: Int = 8, | |
- var pontosDisponiveis: Int = 27 | |
-){ | |
+import java.util.Locale | |
+ | |
+class Personagem { | |
// Tabela de custo | |
private val tabelaCusto = mapOf( | |
@@ -22,6 +11,28 @@ class Personagem( | |
12 to 4, 13 to 5, 14 to 7, 15 to 9 | |
) | |
+ var nome: String = "" | |
+ | |
+ var raca: racas.iRacas? = null | |
+ | |
+ var classe: iClasses? = null | |
+ | |
+ var forca: Int = 8 | |
+ | |
+ var destreza: Int = 8 | |
+ | |
+ var constituicao: Int = 8 | |
+ | |
+ var inteligencia: Int = 8 | |
+ | |
+ var sabedoria: Int = 8 | |
+ | |
+ var carisma: Int = 8 | |
+ | |
+ var pontosDeVida: Int = 8 | |
+ | |
+ var pontosDisponiveis: Int = 27 | |
+ | |
// Método para gastar pontos e aumentar o valor do atributo | |
fun aumentarAtributo(atributo: String, novoValor: Int) { | |
val atributoAtual = obterValorAtributo(atributo) | |
@@ -32,8 +43,10 @@ class Personagem( | |
if (pontosDisponiveis >= custoTotal && novoValor in 8..15) { | |
pontosDisponiveis -= custoTotal | |
definirValorAtributo(atributo, novoValor) | |
- println("\nAtributo $atributo atualizado para $novoValor. " + | |
- "Pontos restantes: $pontosDisponiveis") | |
+ println( | |
+ "\nAtributo $atributo atualizado para $novoValor. " + | |
+ "Pontos restantes: $pontosDisponiveis" | |
+ ) | |
} else { | |
println("\nNão é possível atualizar $atributo para $novoValor. Pontos insuficientes ou valor inválido.") | |
} | |
@@ -52,6 +65,7 @@ class Personagem( | |
else -> 8 | |
} | |
} | |
+ | |
private fun definirValorAtributo(atributo: String, valor: Int) { | |
when (atributo.lowercase(Locale.getDefault())) { | |
"forca" -> forca = valor | |
diff --git a/dndback/src/main/java/up/dndback/Racas.kt b/dndback/src/main/java/up/dndback/Racas.kt | |
index 907b8fd..2becfc0 100644 | |
--- a/dndback/src/main/java/up/dndback/Racas.kt | |
+++ b/dndback/src/main/java/up/dndback/Racas.kt | |
@@ -1,20 +1,20 @@ | |
-import racas.AnaoDaMontanha | |
-import racas.AnaoDaColina | |
import racas.Anao | |
+import racas.AnaoDaColina | |
+import racas.AnaoDaMontanha | |
+import racas.Draconato | |
+import racas.Drow | |
import racas.Elfo | |
-import racas.ElfoDaFloresta | |
import racas.ElfoAlto | |
-import racas.MeioElfo | |
-import racas.Humano | |
-import racas.HalflingPesLeves | |
-import racas.HalflingRobusto | |
-import racas.Draconato | |
+import racas.ElfoDaFloresta | |
import racas.Gnomo | |
import racas.GnomoDaFloresta | |
import racas.GnomoDasRochas | |
+import racas.HalflingPesLeves | |
+import racas.HalflingRobusto | |
+import racas.Humano | |
+import racas.MeioElfo | |
import racas.MeioOrc | |
import racas.Tiefling | |
-import racas.Drow | |
import racas.iRacas | |
object Racas { | |
diff --git a/dndback/src/main/java/up/dndback/classes/Barbaro.kt b/dndback/src/main/java/up/dndback/classes/Barbaro.kt | |
index 838fdaf..3020dbe 100644 | |
--- a/dndback/src/main/java/up/dndback/classes/Barbaro.kt | |
+++ b/dndback/src/main/java/up/dndback/classes/Barbaro.kt | |
@@ -1,4 +1,5 @@ | |
package classes | |
+ | |
import up.dndback.classes.iClasses | |
class Barbaro : iClasses { | |
diff --git a/dndback/src/main/java/up/dndback/classes/Bardo.kt b/dndback/src/main/java/up/dndback/classes/Bardo.kt | |
index 7b29a6c..bf3fcb9 100644 | |
--- a/dndback/src/main/java/up/dndback/classes/Bardo.kt | |
+++ b/dndback/src/main/java/up/dndback/classes/Bardo.kt | |
@@ -1,4 +1,5 @@ | |
package classes | |
+ | |
import up.dndback.classes.iClasses | |
class Bardo : iClasses { | |
diff --git a/dndback/src/main/java/up/dndback/classes/Bruxo.kt b/dndback/src/main/java/up/dndback/classes/Bruxo.kt | |
index 72101f4..59a4d66 100644 | |
--- a/dndback/src/main/java/up/dndback/classes/Bruxo.kt | |
+++ b/dndback/src/main/java/up/dndback/classes/Bruxo.kt | |
@@ -1,4 +1,5 @@ | |
package classes | |
+ | |
import up.dndback.classes.iClasses | |
class Bruxo : iClasses { | |
diff --git a/dndback/src/main/java/up/dndback/classes/Clerigo.kt b/dndback/src/main/java/up/dndback/classes/Clerigo.kt | |
index 31f264b..89a6019 100644 | |
--- a/dndback/src/main/java/up/dndback/classes/Clerigo.kt | |
+++ b/dndback/src/main/java/up/dndback/classes/Clerigo.kt | |
@@ -1,4 +1,5 @@ | |
package classes | |
+ | |
import up.dndback.classes.iClasses | |
class Clerigo : iClasses { | |
diff --git a/dndback/src/main/java/up/dndback/classes/Druida.kt b/dndback/src/main/java/up/dndback/classes/Druida.kt | |
index bae3aaf..6490c39 100644 | |
--- a/dndback/src/main/java/up/dndback/classes/Druida.kt | |
+++ b/dndback/src/main/java/up/dndback/classes/Druida.kt | |
@@ -1,4 +1,5 @@ | |
package classes | |
+ | |
import up.dndback.classes.iClasses | |
class Druida : iClasses { | |
diff --git a/dndback/src/main/java/up/dndback/classes/Feiticeiro.kt b/dndback/src/main/java/up/dndback/classes/Feiticeiro.kt | |
index 9fbc610..d8c2b09 100644 | |
--- a/dndback/src/main/java/up/dndback/classes/Feiticeiro.kt | |
+++ b/dndback/src/main/java/up/dndback/classes/Feiticeiro.kt | |
@@ -1,4 +1,5 @@ | |
package classes | |
+ | |
import up.dndback.classes.iClasses | |
class Feiticeiro : iClasses { | |
diff --git a/dndback/src/main/java/up/dndback/classes/Guerreiro.kt b/dndback/src/main/java/up/dndback/classes/Guerreiro.kt | |
index a724429..400ccf4 100644 | |
--- a/dndback/src/main/java/up/dndback/classes/Guerreiro.kt | |
+++ b/dndback/src/main/java/up/dndback/classes/Guerreiro.kt | |
@@ -1,4 +1,5 @@ | |
package classes | |
+ | |
import up.dndback.classes.iClasses | |
class Guerreiro : iClasses { | |
diff --git a/dndback/src/main/java/up/dndback/classes/Ladino.kt b/dndback/src/main/java/up/dndback/classes/Ladino.kt | |
index 4fe01e5..8df4276 100644 | |
--- a/dndback/src/main/java/up/dndback/classes/Ladino.kt | |
+++ b/dndback/src/main/java/up/dndback/classes/Ladino.kt | |
@@ -1,4 +1,5 @@ | |
package classes | |
+ | |
import up.dndback.classes.iClasses | |
class Ladino : iClasses { | |
diff --git a/dndback/src/main/java/up/dndback/classes/Mago.kt b/dndback/src/main/java/up/dndback/classes/Mago.kt | |
index 7fc7f10..bcc4e12 100644 | |
--- a/dndback/src/main/java/up/dndback/classes/Mago.kt | |
+++ b/dndback/src/main/java/up/dndback/classes/Mago.kt | |
@@ -1,4 +1,5 @@ | |
package classes | |
+ | |
import up.dndback.classes.iClasses | |
class Mago : iClasses { | |
diff --git a/dndback/src/main/java/up/dndback/classes/Monge.kt b/dndback/src/main/java/up/dndback/classes/Monge.kt | |
index 283908d..3345382 100644 | |
--- a/dndback/src/main/java/up/dndback/classes/Monge.kt | |
+++ b/dndback/src/main/java/up/dndback/classes/Monge.kt | |
@@ -1,4 +1,5 @@ | |
package classes | |
+ | |
import up.dndback.classes.iClasses | |
diff --git a/dndback/src/main/java/up/dndback/classes/Paladino.kt b/dndback/src/main/java/up/dndback/classes/Paladino.kt | |
index 92b4506..ff63885 100644 | |
--- a/dndback/src/main/java/up/dndback/classes/Paladino.kt | |
+++ b/dndback/src/main/java/up/dndback/classes/Paladino.kt | |
@@ -1,4 +1,5 @@ | |
package classes | |
+ | |
import up.dndback.classes.iClasses | |
class Paladino : iClasses { | |
diff --git a/dndback/src/main/java/up/dndback/classes/Patrulheiro.kt b/dndback/src/main/java/up/dndback/classes/Patrulheiro.kt | |
index 7fe08b6..1d64bc9 100644 | |
--- a/dndback/src/main/java/up/dndback/classes/Patrulheiro.kt | |
+++ b/dndback/src/main/java/up/dndback/classes/Patrulheiro.kt | |
@@ -1,4 +1,5 @@ | |
package classes | |
+ | |
import up.dndback.classes.iClasses | |
class Patrulheiro : iClasses { | |
diff --git a/dndback/src/main/java/up/dndback/racas/Anao.kt b/dndback/src/main/java/up/dndback/racas/Anao.kt | |
index 1c82f74..5cf93f8 100644 | |
--- a/dndback/src/main/java/up/dndback/racas/Anao.kt | |
+++ b/dndback/src/main/java/up/dndback/racas/Anao.kt | |
@@ -1,4 +1,5 @@ | |
package racas | |
+ | |
import up.dndback.Personagem | |
class Anao : iRacas { | |
diff --git a/dndback/src/main/java/up/dndback/racas/AnaoDaColina.kt b/dndback/src/main/java/up/dndback/racas/AnaoDaColina.kt | |
index 0eda07a..3c95a0c 100644 | |
--- a/dndback/src/main/java/up/dndback/racas/AnaoDaColina.kt | |
+++ b/dndback/src/main/java/up/dndback/racas/AnaoDaColina.kt | |
@@ -1,7 +1,8 @@ | |
package racas | |
+ | |
import up.dndback.Personagem | |
-class AnaoDaColina : racas.iRacas { | |
+class AnaoDaColina : iRacas { | |
override val nome = "Anão da Colina" | |
override fun aplicarBonus(personagem: Personagem) { | |
diff --git a/dndback/src/main/java/up/dndback/racas/AnaoDaMontanha.kt b/dndback/src/main/java/up/dndback/racas/AnaoDaMontanha.kt | |
index 7bfbff6..142a6dc 100644 | |
--- a/dndback/src/main/java/up/dndback/racas/AnaoDaMontanha.kt | |
+++ b/dndback/src/main/java/up/dndback/racas/AnaoDaMontanha.kt | |
@@ -2,15 +2,15 @@ package racas | |
import up.dndback.Personagem | |
-class AnaoDaMontanha : racas.iRacas { | |
+class AnaoDaMontanha : iRacas { | |
override val nome = "Anão da Montanha" | |
override fun aplicarBonus(personagem: Personagem) { | |
- personagem.forca += 2 | |
- personagem.destreza -= 2 | |
- personagem.constituicao += 2 | |
- personagem.inteligencia -= 2 | |
- personagem.sabedoria += 2 | |
- personagem.carisma -= 2 | |
+ personagem.forca += 2 | |
+ personagem.destreza -= 2 | |
+ personagem.constituicao += 2 | |
+ personagem.inteligencia -= 2 | |
+ personagem.sabedoria += 2 | |
+ personagem.carisma -= 2 | |
} | |
} | |
\ No newline at end of file | |
diff --git a/dndback/src/main/java/up/dndback/racas/Draconato.kt b/dndback/src/main/java/up/dndback/racas/Draconato.kt | |
index 5cb6729..d8c019f 100644 | |
--- a/dndback/src/main/java/up/dndback/racas/Draconato.kt | |
+++ b/dndback/src/main/java/up/dndback/racas/Draconato.kt | |
@@ -1,8 +1,9 @@ | |
package racas | |
+ | |
import up.dndback.Personagem | |
-class Draconato : racas.iRacas { | |
+class Draconato : iRacas { | |
override val nome = "Draconato" | |
override fun aplicarBonus(personagem: Personagem) { | |
diff --git a/dndback/src/main/java/up/dndback/racas/Drow.kt b/dndback/src/main/java/up/dndback/racas/Drow.kt | |
index 6560af6..117fb07 100644 | |
--- a/dndback/src/main/java/up/dndback/racas/Drow.kt | |
+++ b/dndback/src/main/java/up/dndback/racas/Drow.kt | |
@@ -1,7 +1,8 @@ | |
package racas | |
+ | |
import up.dndback.Personagem | |
-class Drow : racas.iRacas { | |
+class Drow : iRacas { | |
override val nome = "Drow" | |
override fun aplicarBonus(personagem: Personagem) { | |
diff --git a/dndback/src/main/java/up/dndback/racas/Elfo.kt b/dndback/src/main/java/up/dndback/racas/Elfo.kt | |
index 5fc5743..13bf708 100644 | |
--- a/dndback/src/main/java/up/dndback/racas/Elfo.kt | |
+++ b/dndback/src/main/java/up/dndback/racas/Elfo.kt | |
@@ -1,7 +1,8 @@ | |
package racas | |
+ | |
import up.dndback.Personagem | |
-class Elfo : racas.iRacas { | |
+class Elfo : iRacas { | |
override val nome = "Elfo" | |
override fun aplicarBonus(personagem: Personagem) { | |
diff --git a/dndback/src/main/java/up/dndback/racas/ElfoAlto.kt b/dndback/src/main/java/up/dndback/racas/ElfoAlto.kt | |
index e6b4f38..f4bb4bf 100644 | |
--- a/dndback/src/main/java/up/dndback/racas/ElfoAlto.kt | |
+++ b/dndback/src/main/java/up/dndback/racas/ElfoAlto.kt | |
@@ -1,7 +1,8 @@ | |
package racas | |
+ | |
import up.dndback.Personagem | |
-class ElfoAlto : racas.iRacas { | |
+class ElfoAlto : iRacas { | |
override val nome = "Elfo Alto" | |
override fun aplicarBonus(personagem: Personagem) { | |
diff --git a/dndback/src/main/java/up/dndback/racas/ElfoDaFloresta.kt b/dndback/src/main/java/up/dndback/racas/ElfoDaFloresta.kt | |
index 42e41c2..531bb14 100644 | |
--- a/dndback/src/main/java/up/dndback/racas/ElfoDaFloresta.kt | |
+++ b/dndback/src/main/java/up/dndback/racas/ElfoDaFloresta.kt | |
@@ -1,7 +1,8 @@ | |
package racas | |
+ | |
import up.dndback.Personagem | |
-class ElfoDaFloresta : racas.iRacas { | |
+class ElfoDaFloresta : iRacas { | |
override val nome = "Elfo da Floresta" | |
override fun aplicarBonus(personagem: Personagem) { | |
diff --git a/dndback/src/main/java/up/dndback/racas/Gnomo.kt b/dndback/src/main/java/up/dndback/racas/Gnomo.kt | |
index d041811..5cd4800 100644 | |
--- a/dndback/src/main/java/up/dndback/racas/Gnomo.kt | |
+++ b/dndback/src/main/java/up/dndback/racas/Gnomo.kt | |
@@ -1,7 +1,8 @@ | |
package racas | |
+ | |
import up.dndback.Personagem | |
-class Gnomo : racas.iRacas { | |
+class Gnomo : iRacas { | |
override val nome = "Gnomo" | |
override fun aplicarBonus(personagem: Personagem) { | |
diff --git a/dndback/src/main/java/up/dndback/racas/GnomoDaFloresta.kt b/dndback/src/main/java/up/dndback/racas/GnomoDaFloresta.kt | |
index 81979fb..bd32f4c 100644 | |
--- a/dndback/src/main/java/up/dndback/racas/GnomoDaFloresta.kt | |
+++ b/dndback/src/main/java/up/dndback/racas/GnomoDaFloresta.kt | |
@@ -1,7 +1,8 @@ | |
package racas | |
+ | |
import up.dndback.Personagem | |
-class GnomoDaFloresta : racas.iRacas { | |
+class GnomoDaFloresta : iRacas { | |
override val nome = "Gnomo da Floresta" | |
override fun aplicarBonus(personagem: Personagem) { | |
diff --git a/dndback/src/main/java/up/dndback/racas/GnomoDasRochas.kt b/dndback/src/main/java/up/dndback/racas/GnomoDasRochas.kt | |
index 8ffc9fd..2324b58 100644 | |
--- a/dndback/src/main/java/up/dndback/racas/GnomoDasRochas.kt | |
+++ b/dndback/src/main/java/up/dndback/racas/GnomoDasRochas.kt | |
@@ -1,8 +1,9 @@ | |
package racas | |
+ | |
import up.dndback.Personagem | |
-class GnomoDasRochas : racas.iRacas { | |
+class GnomoDasRochas : iRacas { | |
override val nome = "Gnomo das Rochas" | |
override fun aplicarBonus(personagem: Personagem) { | |
diff --git a/dndback/src/main/java/up/dndback/racas/HalflingPesLeves.kt b/dndback/src/main/java/up/dndback/racas/HalflingPesLeves.kt | |
index 041c41d..66f05cc 100644 | |
--- a/dndback/src/main/java/up/dndback/racas/HalflingPesLeves.kt | |
+++ b/dndback/src/main/java/up/dndback/racas/HalflingPesLeves.kt | |
@@ -1,8 +1,9 @@ | |
package racas | |
+ | |
import up.dndback.Personagem | |
-class HalflingPesLeves : racas.iRacas { | |
+class HalflingPesLeves : iRacas { | |
override val nome = "Halfling Pés Leves" | |
override fun aplicarBonus(personagem: Personagem) { | |
diff --git a/dndback/src/main/java/up/dndback/racas/HalflingRobusto.kt b/dndback/src/main/java/up/dndback/racas/HalflingRobusto.kt | |
index b15e57a..54a0a0e 100644 | |
--- a/dndback/src/main/java/up/dndback/racas/HalflingRobusto.kt | |
+++ b/dndback/src/main/java/up/dndback/racas/HalflingRobusto.kt | |
@@ -1,8 +1,9 @@ | |
package racas | |
+ | |
import up.dndback.Personagem | |
-class HalflingRobusto : racas.iRacas { | |
+class HalflingRobusto : iRacas { | |
override val nome = "Halfling Robusto" | |
override fun aplicarBonus(personagem: Personagem) { | |
diff --git a/dndback/src/main/java/up/dndback/racas/Humano.kt b/dndback/src/main/java/up/dndback/racas/Humano.kt | |
index 4f2d4bd..bbe0d98 100644 | |
--- a/dndback/src/main/java/up/dndback/racas/Humano.kt | |
+++ b/dndback/src/main/java/up/dndback/racas/Humano.kt | |
@@ -1,7 +1,8 @@ | |
package racas | |
+ | |
import up.dndback.Personagem | |
-class Humano : racas.iRacas { | |
+class Humano : iRacas { | |
override val nome = "Humano" | |
override fun aplicarBonus(personagem: Personagem) { | |
diff --git a/dndback/src/main/java/up/dndback/racas/MeioElfo.kt b/dndback/src/main/java/up/dndback/racas/MeioElfo.kt | |
index 075745d..c7556bc 100644 | |
--- a/dndback/src/main/java/up/dndback/racas/MeioElfo.kt | |
+++ b/dndback/src/main/java/up/dndback/racas/MeioElfo.kt | |
@@ -1,8 +1,9 @@ | |
package racas | |
+ | |
import up.dndback.Personagem | |
-class MeioElfo : racas.iRacas { | |
+class MeioElfo : iRacas { | |
override val nome = "Meio-Elfo" | |
override fun aplicarBonus(personagem: Personagem) { | |
diff --git a/dndback/src/main/java/up/dndback/racas/MeioOrc.kt b/dndback/src/main/java/up/dndback/racas/MeioOrc.kt | |
index a0f1354..6ec7189 100644 | |
--- a/dndback/src/main/java/up/dndback/racas/MeioOrc.kt | |
+++ b/dndback/src/main/java/up/dndback/racas/MeioOrc.kt | |
@@ -1,8 +1,9 @@ | |
package racas | |
+ | |
import up.dndback.Personagem | |
-class MeioOrc : racas.iRacas { | |
+class MeioOrc : iRacas { | |
override val nome = "Meio-Orc" | |
override fun aplicarBonus(personagem: Personagem) { | |
diff --git a/dndback/src/main/java/up/dndback/racas/Tiefling.kt b/dndback/src/main/java/up/dndback/racas/Tiefling.kt | |
index 1e28ccc..c6e2567 100644 | |
--- a/dndback/src/main/java/up/dndback/racas/Tiefling.kt | |
+++ b/dndback/src/main/java/up/dndback/racas/Tiefling.kt | |
@@ -1,8 +1,9 @@ | |
package racas | |
+ | |
import up.dndback.Personagem | |
-class Tiefling : racas.iRacas { | |
+class Tiefling : iRacas { | |
override val nome = "Tiefling" | |
override fun aplicarBonus(personagem: Personagem) { |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment