Jump to content
UnitySpain

Stradmann

Registrados
  • Content Count

    8
  • Joined

  • Last visited

Community Reputation

3 Neutral

About Stradmann

  • Rank
    Recién Llegado

Profile Information

  • Especialidad
    Coder

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Gracias!! Tardare unos dias en investigar y aprender un poco todo esto... ya cuando tenga las ideas mas claras vuelvo a por mas;)
  2. Gracias!!! Voy a intentarlo a ver si lo he entendido bien y vuelvo, porque me parece que estoy aprendiendo un poco desordenadamente y esos huecos hacen que no entienda bien algunas cosas. Por ejemplo, me surgen dudas como si todos los personajes tienen la lista de atributos, todos acceden a la clase fuerza por ejemplo y es la misma para todos? o cuando haga la lista de atributos en la clase personaje, cada referencia me creara una instancia de ese atributo? si es asi, entonces la classe modifiers tambien creara sus propias instancias de atributos no? entonces, la clase personaje se crea su propia instancia de modifiers no? entonces la clase midifiers tiene todas las modificaciones posibles, y en cada personaje, las que no use valdran 0...y si son scriptableObjects tambien hace instancias? no, no? no se, voy a intentar hacerme un ejemplo practico con lo que Eskema ha escrito, a ver si logro que funcione.. os dire que tal o que nuevas dudas surgen.. Gracias!!
  3. Hola! Esta es la situacion, tengo unos personajes con una serie de habilidades. De esas habilidades hay de dos tipos, las de combate i las de lider. Las de combate no me preocupan porque se activan al hacer click, pero las de lider afectan diferentes partes del combate, por ejemplo.. una aumenta el daño de los ataques de todos, otro reduce el coste de activar las habilidades de todos... Quisiera evitar escribir el combate con un if en cada parrafo para ver si hay este lider u este otro para hacer esto de una manera u otra. Me gustaria tener un objeto habilidad que hiciera las modificaciones y asi si quiero añadir mas personajes con sus nuevas habilidades solo tenga que programar eso... hay alguna manera de hacer un override de una funcion que pertenece a otra clase? o algo parecido... que herramienta podria usar? Gracias!
  4. Ya esta resuelto!! lo primero lo solucione añadiendo int j = i; en el primer for, i pasarle la j en vez de la i. Ha funcionado. el segundo, es que la funcion que llama a esta que esta puesta aqui esta en el Update y no cerraba del todo bien la puerta, asi que añadí un bool que se pusiera false al final del if i asi no entrara mas.
  5. Hola! Tengo un trozo de script que parece funcionar bien, pero cuando lo miro mas de cerca hay algo raro. Me explico: ... for (int i = 0; i < charactersToSelect.Length; i++) { charactersToSelect[i].onValueChanged.AddListener(delegate { CharacterSelectionToggleReaction(thisMision.maxCharactersAvailable, i); }); } } public void CharacterSelectionToggleReaction (int maxChar, int index) { Debug.Log("running function" + index); int characterCount = 0; for (int i = 0; i < charactersToSelect.Length; i++) { if (charactersToSelect[i].isOn) { characterCount++; } } if (characterCount == maxChar) { for (int i = 0; i < charactersToSelect.Length; i++) { if (!charactersToSelect[i].isOn) { charactersToSelect[i].enabled = false; } } } else { for (int i = 0; i < charactersToSelect.Length; i++) { charactersToSelect[i].enabled = true; } } } El comportamiento final es el esperado, pero, en el for del principio, la "i" que paso como parametro en el AddListener simpre me da un valor de 6, es decir que me envia el charactersToSelect.Length. Ese es el primer fallo. Luego cuando hago clic en el boton me aparecen 200 o 2000 mensajes de "running function", con un solo clic... solo deberia aparecer 1 mensaje por clic. Me parece bastante extraño asi que por eso lo cuelgo aquí a ver si veo el porqué y como resolverlo.. Gracias!!
  6. Gracias!! Voy a estudiar esto que me has dicho y a probarlo..
  7. Hola, estoy haciendo un proyecto de rol para el cual he decidido usar Scriptable Objects. La idea es que me creo un conjunto de SO del tipo "Personaje" y almaceno alli todos los datos de los personajes, u otro conjunto de "Misiones" con la info de cada mision, etc. El problema viene cuando inteto usarlos. Para poder tener disponibles los datos que me guardan los ScriptableObjects y dado que son muchos y no voy a referenciarlos manualmente uso el Resoursces.FindObjectsOfTypeAll y asi creo un array con todos los objetos de un tipo, ya sean misiones, areas, personajes, etc. Lo que pasa es que no funciona siempre, de vez en cuando, o cuando cargo otra escena en el editor, la instrucción deja de encontrar nada. Un truco barato que he encontrado es mover los SO de carpeta y los vuelve a encontrar durante un rato. Quisiera saber porque deja de encontrar los SO y como hacer para que siempre me los encuentre y el juego funcione. Tengo que añadir algo de codigo? Como funcionan estos SO? Gracias.
×
×
  • Create New...