Logic_case

Muchos habrán visto estas entidades al descompilar otros mapas, muchos los habrán visto en la lista de entidades, muchos sabrán que son y como se usan, pero… ¿Lo sabes tú? Estas entidades, para empezar con ejemplos, son unas entidades que nos permiten, por así decirlo, “poner el azar en juego”. Esto quiere decir que es posible hacer que el juego de una opción de elegir al azar, como una ruleta, tirar un dado, que se abra “x” puerta de 3 puertas, que se rompa un suelo, caiga una roca o se abra una puerta… Son muchos usos los que tiene, muy curiosos algunos por cierto, pero se basa en eso: “ramdom” o “azar”. Son entidades muy útiles a la hora de hacer mapas “escape”, ya que nos dan muchas opciones cuando lo jugamos. Si se hace bien, se podría crea un mapa con varios posibles recorridos, 16 o por ahí, y eso es mejor que un mapa monótono y rectilineo.


Uso:

N. del A: Ya que sabemos que es, podremos saber dónde y como usarlo. La mayoría de veces el “qué” y el “cómo” se suelen emparentar mucho por el tema de ejemplos, es decir, con lo anterior podría quedar claro dónde se usa.

Bien, como ya he dado ejemplos, su uso es muy simple; basta con seguir unos pasos simples ahora explicados. Esta entidad se basa en output e inputs, como casi todas las demás entidades “logic”. Para empezar, vamos a ver sus propiedades:

  • Name: Nombre de la entidad con la que “interactúa” en el mundo. En mi caso le he puesto “casos_azar”.
  • Case xx: Esto es un campo para un valor. Aconsejo que sean estilo “case 01: 1; case 02: 2; etc…”. Asignar valores al número de casos que vayais a usar (por ejemplo, si quieres que 1/3 puertas se abra al azar, tendrías que cojer solo 3 “casos”.

(No os guies mucho por los nombres de la img)

Esto es muy simple de pillar:

OnCaseXX> Cosa1> Acción a realizar.

¿Que quiere decir esto? Esto se refiere a que “cuando sea el casoxx”, la “cosa1” realizará “x” acción. Mirad la imagen para que veais. También pongo un ejemplo simple, con tres puertas:

On case01> Puerta1> Open On case02> Puerta2> Open On case03> Puerta3> Open

Se sabe que en cualquier de los casos anteriores, una de esas puertas se abrirá.


Ahora ya sabemos qué hace y cómo, pero… ¿como se acciona o activa? Muy simple, basta con usar cualquier entidad de “activación”, ya sea un trigger, un botón, otra entidad logic (logic_timer o logic_relay por ejemplo) y poner unos outputs simples:

Aquí hay 2 inputs clave: “PickRamdom” e “InValue”

  • PickRamdom: Esto elige al azar uno de los outputs anteriores que hayamos asignado con un valor (case01, case02 o case03 en el caso de 3 puertas). Por ejemplo, si le ponemos a un func_button un output así:

OnPressed> Casos_azar> PickRamdom

Esto hará que se elija uno de los casos anteriores, es decir, que se abra una de las 3 puertas (al azar, no sigue ninguna regla)

  • InValue: ¿qué pasa si queremos que pase algo concreto en vez de al azar? Para eso usamos el “Invalue”. ¿Recordáis esos valores que les dimos a los parámetros “Case 01; case 02 y case 03? Esos 3 valores (1,2,3) nos sirven para precisar y hacer algo como lo anterior. Si tenemos un botón y lo pulsamos cuando esta blockeado o “locked” podemos hacer que se habra una puerta sí o sí por cojones.

OnUseLocked> Casos_azar> InValue> 2

Esto hará que se abra la puerta 2 sí o sí. Muy útil a la hora de easter eggs o caminos alternativos al orginal.


Eso es todo, saludos y si veis algún fallo comentarmelo ;D

source/mapas/usando_los_logic_case.txt · Última modificación: 2011/06/15 17:31 (editor externo)
 
Excepto donde se indique lo contrario, el contenido de esta wiki se autoriza bajo la siguiente licencia: CC Attribution-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki



GAS Style basado en Prototype Style © 2008 ShadowFlames Development
Original Design by Frost - Maintained and Modified by Ika

Traducción al español por Huan Manwë