- Wc3-WoW Forum -
¡Conéctate! En caso de no estar registrado hazlo puesto que eliminarás la publicidad, podrás ver los links de descarga, etc..
Últimos temas
Conectarse

Recuperar mi contraseña

WC3WOW UPLOADER
WC3WOW Uploader
HOSTS
- Imágenes | Archivos -





FacebooK
WC3WOW Facebook
[MK]Blaze Blog
Por favor, si te gusta el material de la web y quieres copiarlo a otra, se tan amable de pedir permiso al creador del material primero. Por favor, no robe material. Muchas gracias.

Clan [MK]
Clan MK

[Tutorial] Variables

Ver el tema anterior Ver el tema siguiente Ir abajo

Tick [Tutorial] Variables

Mensaje por TRISTAN_07 el 16/05/12, 10:10 pm

Variables - Nociones Básicas - TRISTAN_07

En este tutorial explico de forma practica y simple de comprender todo sobre las variables de WorldEditor, indicando sus tipos y diferentes relaciones que pueden realizarse entre ellas.
Este Tuto contiene:
Like a Star @ heaven ¿Qué es una Variable?
Like a Star @ heaven ¿Son muy útiles las Variables?
Like a Star @ heaven ¿Qué podemos hacer con Variables?
Like a Star @ heaven ¿Cómo creamos una Variable?
Like a Star @ heaven ¿Qué son y Cuales son los tipos de Datos mas Utilizados?
Like a Star @ heaven ¿Qué son los Arrays o Formación de Variables?
Like a Star @ heaven Ejemplo complejo de la manipulación y relación de las Variables con Explicación.

¿Qué es una Variable?:
Like a Star @ heaven ¿Qué es una Variable?
Las variables son espacios reservados en la memoria que, como su nombre indica, pueden cambiar de contenido a lo largo de la ejecución de un programa. Una variable corresponde a un área reservada en la memoria principal del ordenador pudiendo ser de longitud:
Fija.- Cuando el tamaño de la misma no variará a lo largo de la ejecución del programa. Todas las variables, sean del tipo que sean tienen longitud fija, salvo algunas excepciones — como las colecciones de otras variables (arrays) o las cadenas.
Variable.- Cuando el tamaño de la misma puede variar a lo largo de la ejecución. Típicamente colecciones de datos.

Fuente: [Tienes que estar registrado y conectado para ver este vínculo]

Bien de una forma mas metafórica, muchos podemos decir que las Variables son como pequeñas cajas en donde guardamos algo, y que luego queremos utilizar entonces buscamos esa caja. Estas Variables ocupan memoria, así como ocupan lugar las cajas en una habitación.

¿Son muy útiles las Variables?:
Like a Star @ heaven ¿Son muy útiles las Variables?
Así es, las variables son muy útiles y en algunos casos hasta indispensables, si vamos por el lado del World Edit, con las variables podemos hacer sistemas que ínter actúan de forma continua refiriéndonos a Variables que al fin generan un circuito continuo, o referirnos mediante variables a "cosas" a las que de otro modo ya no podríamos referirnos entonces las guardamos en estas cajitas.

¿Qué podemos hacer con Variables?:
Like a Star @ heaven ¿Qué podemos hacer con Variables?
Multiples acciones podemos realizar con las variables, podemos darle valores que luego modificaremos, y/o le demos nuevos valores que luego aplicaremos.

¿Cómo creamos una Variable?:
Like a Star @ heaven ¿Cómo creamos una Variable?
Esto es muy simple simple, solo tenemos que ir al editor de detonadores, y en la barra de herramientas de este menú se encuentra una herramienta cuyo icono tiene la forma de una "X" , Luego vamos a -Editar -Nueva Variable (Ctrl+N). Después de esto tenemos que darle un Nombre a nuestra Variable, esto no tiene mucha influencia en cuanto al dato de la variable pero sí en cuanto al orden propio, lo ideal es darle un nombre siguiendo un Patrón para estar mas orientado, y así no tener inconvenientes cuando debemos referirnos a ella. A estas variables se les puede dar un valor predeterminado o darle posteriormente un valor mediante detonadores, comúnmente conocido como "SETEO", cada variable puede almacenar diferentes tipos de Datos.

¿Qué son y Cuales son los Tipos de Datos mas utilizados?:
Like a Star @ heaven ¿Qué son los tipos de Datos?
Los tipos de datos, son valga la redundancia el tipo de dato que tiene la capacidad de almacenar una cierta variable, si bien hay muchos tipos de datos en el contexto de World Edit los mas utilizados son:
Like a Star @ heaven -Booleana: este tipo de valor nos permite guardar una relación entre True-False, es decir, un valor Verdadero o Falso, podemos utilizar este tipo de datos para denotar si queremos o no que una función se realice.
Like a Star @ heaven -Integer (Numero Entero): este tipo de dato nos permite almacenar números de tipo entero, se puede utilizar para muchas acciones, y generalmente este tipo de variable nunca falta en cualquier mapa, podemos utilizar esta variable para numerar una cantidad de otro dato, o para realizar operaciones aritméticas que deriven en otras funciones.
Like a Star @ heaven -Tipo de Objeto: con este tipo de datos nos referimos a un tipo de objeto al cual queramos referirnos nuevamente, ejemplo
"VARIABLE_TIPO_OBJETO=(Type of Last Being Manipulated Item)" es decir le damos el valor referido al tipo de objeto del Ultimo Objeto manipulado.
Like a Star @ heaven -Payer (Jugador): este tipo de daos es para hacer referencia a un jugador determinado, al cual luego le podemos aplicar acciones por ejemplo,
"VAR_JUGADOR=(Owner (Death Unit))" controlador de la unidad muerta, luego de esto podemos realizar una acción parecida a esta "Partida- Derrota - Enforced Derrota for Player(VAR_JUGADOR), es decir decimos que el jugador guardado en la Variable pierde la Partida.
Like a Star @ heaven -Point (Punto): en este tipo de variables podemos almacenar el dato de un Punto determinado del Mapa, este tipo de variables es muy particular y muy utilizada, ya que suele ser muy difícil o hasta aveces imposible referirse a un Punto que hayamos Utilizado anterior mente, por eso es que se guarda el Dato de ese Punto en este tipo de variables para luego hacer referencia nuevamente a este Punto. ejemplo metafórico, si una unidad a la hora 23:14 del juego pasa por Punto-A, va a ser muy difícil referirnos a ese punto después de que la unidad ya haya abandonado el Punto, por eso lo almacenamos.
Like a Star @ heaven -Real: este es un tipo de dato muy utilizado ya que que nos permite almacenar números de tipo Real, así como por ejemplo el n° de la Hora,el ángulo de visión de una unidad y cualquier otro numero con ","(coma).
Like a Star @ heaven -String (Cadena o Cadena de Texto): esta tipo de variable se utiliza para guardar datos de Caracteres, es decir lineas de letras, Palabras, Textos y demás caracteres que puedan formar una cadena de texto y que pueden ser utilizados como Mensajes posteriormente.por ejemplo
"VAR_CADENA=Roberto Quiere Tomar #$%#$/&#"
y luego -Partida - Display Mensaje for All Players (VAR_CADENA)
entonces enviará el mensaje almacenado en la variable "VAR_CADENA"
Like a Star @ heaven -Unit(Unidad): este tipo de datos hace referencia a una unidad, a la que luego podemos referirnos mediante la variable. Lo bueno de este tipo de datos es que nos permite almacenar unidades muertas, unidades creadas, y demás. Por ejemplo
"VAR_MI_UNIDAD=(Last Created Unit)" - ultima unidad creada
"VAR_MI_UNIDAD=(Entering Unit)" - Unidad Entrante, cuando nos referimos a ingresos en regiones
-Así también hay una opción que puede referirse a otras opciones, la Triggering Unit - Unidad Detonadora, esta puede ser utilizada cuando hablamos de el acontecimiento eventual de una unidad. por ejemplo en un acontecimiento que hace referencia a "Generic Unit Muere" podemos usar (Death Unit) pero es mas conveniente (Triggering Unit) que también hace referencia a la unidad detonadora del evento, en este caso la muerte de esa unidad, pero esta referencia es mas eficiente ya que acciona de forma más rápida.
-Otros tipos:
Like a Star @ heaven -Grupo de Unidad: hace referencia a un grupo determinado de unidades
Like a Star @ heaven _Grupo de Jugadores: se refiere a un grupo determinado de jugadores así como Jugadores aliados del jugador 9 (gris).
Like a Star @ heaven -Tipo de Unidad: se refiere a un tipo de unidad determinado, puede servirá para crear unidades de ese mismo tipo, y desde esta variable podemos referirnos a el tipo de una unidad almacenada en una variable de Unidad
Like a Star @ heaven -Tipo de Objeto: se refiere a un tipo de objeto determinado, puede servir para crear objetos de ese mismo tipo, ademas desde esta variable podemos referirnos a un objeto almacenado en una variable de Objeto

¿Qué son los Arrays o Formación de las Variables?:
¿Qué son los Arrays o Formación?
Estas son un tipo particular de Variables, para crear una Arrays tenemos tildar la opción "Formación" al momento de crear la variable, estas variables permiten guardar varios datos dentro de esta misma variable por ejemplo:
Set VAR_JUGADOR[1]=Jugador 1
Set VAR_JUGADOR[2]=Jugador 2
Set VAR_JUGADOR[3]=Jugador 3
Set VAR_JUGADOR[4]=Jugador 4
Set VAR_JUGADOR[5]=Jugador 5
Set VAR_JUGADOR[6]=Jugador 6

en los "[](corchetes)" se establece el Index(Indice de la Variable) es decir se determinan bajo que indice tiene cada valor en esta variable. De forma combinada podemos referirnos a los diferentes indices de una misma variable mediante otras Variables, por ejemplo
Actions:
Código:
Set VAR_INTEGER=(Random number beetwin 1 and 6)
-----(Un numero Random entre 1 y 6)------
Set VAR_JUGADOR[1]=Jugador 1
Set VAR_JUGADOR[2]=Jugador 2
Set VAR_JUGADOR[3]=Jugador 3
Set VAR_JUGADOR[4]=Jugador 4
Set VAR_JUGADOR[5]=Jugador 5
Set VAR_JUGADOR[6]=Jugador 6
Unidad-Create 3 Grunt for VAR_JUGADOR[VAR_INTEGER] in (Center of PlayMap Area)
si nos fijamos bien este codigo creara una unidad para el jugador de la variable "VAR_JUGADOR" que esta almacenado en el Arrays que arroje el cálculo al azar(Random) de la Variable "VAR_INTEGER"

en caso de que VAR_INTEGER sea igual a 3
va a crear el Grunt para el jugador de la Variable "VAR_JUGADOR" con indice en "3", o "VAR_JUGADOR[3]"

EJEMPLO(explicado):
EJEMPLO COMPLEJO:
bien ahora les pasare mediante código un detonador que utilice los diferentes tipos de Variables de forma combinada. y les voy a ir explicado.

VARIABLES:
Like a Star @ heaven T_PUNTO:variable de tipo Punto
Like a Star @ heaven T_UNIDAD:variable de tipo Unidad
Like a Star @ heaven T_TIPO_UNIDAD:variable de tipo Tipo de Unidad
Like a Star @ heaven T_JUGADORES[10]:variable de tipo Jugador con formación 10
Like a Star @ heaven T_G_JUGADORES:variable de tipo Grupo de Jugadores
Like a Star @ heaven T_CADENA:variable de tipo Cadena de Texto
Like a Star @ heaven T_INTEGER:variable de tipo Numero entero
Like a Star @ heaven T_INTEGER2:variable de tipo Numero entero

Código:
EJEMPLO
    Acontecimientos
        Unidad - A unit Gana un Nivel
    Condiciones
    Acciones
Set T_UNIDAD=(Triggering Unit)
---aca guardamos la unidad que gano el nivel en la variable---
Set T_TIPO_UNIDAD=(Type(T_UNIDAD))
---guardamos el tipo de la unidad que gano el nivel en la variable---
Set T_INTEGER=(Player Number(Owner of(T_UNIDAD)))
---almacenamos el numero del jugador controlador de la unidad que gana el nivel o de la variable T_UNIDAD que es lo mismo ya que le dimos ese valor---
Set T_INTEGER2=(Level of(T_UNIDAD))
---aca guardamos el numero entero de el nivel de la unidad T_UNIDAD y la guardamos en esta variable---
Set T_CADENA=(Concatenate String(Name of(T_JUGADOR[T_INTEGER]()+("a ganado")+(T_INTEGER2)+("unidad/es"))
--- aca guardamos una cadena de texto que va a decir el nombre de el jugador controlador de T_UNIDAD "a ganado" T_INTEGER2 (el nivel de la unidad T_UNIDAD) "unidad/es"---
Set T_PUNTO=(Position of(T_UNIDAD))
---aca Guardamos el punto de la posicion de la unidad detonadora que subio de nivel guardada en la variable T_UNIDAD---
Set T_JUGADOR[1]=Jugador 1
Set T_JUGADOR[2]=Jugador 2
Set T_JUGADOR[3]=Jugador 3
Set T_JUGADOR[4]=Jugador 4
Set T_JUGADOR[5]=Jugador 5
Set T_JUGADOR[6]=Jugador 6
Set T_JUGADOR[7]=Jugador 7
Set T_JUGADOR[8]=Jugador 8
Set T_JUGADOR[9]=Jugador 9
Set T_JUGADOR[10]=Jugador 10
--- aca seteamos una variable Arrays con los diferentes Jugadores---
Set T_G_JUGADORES=(Allies of(T_JUGADOR[T_INTEGER]))
---aca grabamos a todos los jugadores aliados de el Jugador de la variable T_JUGADOR con el numero de indice en la variable T_INTEGER que seria el numero de el controlador de la unidad T_UNIDAD, es decir si el dueño de la unidad es el jugador 7, T_INTEGER va a ser = a 7 por ende va a quedar T_JUGADOR[7], y guardamos los aliados de este jugador en la variable de grupo de jugadores---
Unidad - Create (T_INTEGER2) for (T_JUGADOR[T_INTEGER]) in (T_PUNTO)
---aca creamos tantas cantidades como T_INTEGER2 marqué es decir el tantas unidades como el nivel de la T_UNIDAD, para el jugador T_JUGADOR[T_INTEGER]es decir el jugador controlador de la unidad T_UNIDAD en la la ubicación de T_PUNTO---
Partida- Display Mensaje for (T_G_JUGADORES) Mensaje (T_CADENA)
---aca enviamos un mensaje a T_G_JUGADORES, es decir a los aliados de el jugador controlador de la Unidad T_UNIDAD y que arroje el mensaje guardado en la variable T_CADENA---
Custom Scripts - "call RemoveLocation(udg_T_PUNTO)
---esta es una linea de código que nativo que nos permite borrar los datos guardados en la variable de punto T_PUNTO, ya que como habíamos comentado las variables ocupan lugar en la memoria de uso (RAM) por ende si guardamos muchas veces diferentes puntos en la variable deberíamos remover esos datos de otro modo se volvería lento el mapa por el hecho de guardar datos de forma permanente si borralos---

este ejemplo es muy explícito y hasta muy posiblemente inútil o ineficiente (por no decir @#$%) pero muestra como se puede inter actuar con las variables.

Like a Star @ heaven Espero les haya servido o les sirva en algún futuro saludos..


Última edición por Dartz el 27/01/13, 04:05 pm, editado 2 veces (Razón : En los tutorialas jamas se ocultan los links.)

TRISTAN_07
Rango: Campeón
Rango: Campeón

Masculino

Título : El Aprendiz
Cantidad de envíos : 215
Edad : 22
Localización : Lujan De Cuyo, Mendoza, Argentina
Fecha de inscripción : 20/01/2012

Volver arriba Ir abajo

Tick Re: [Tutorial] Variables

Mensaje por Redsuitheart el 16/05/12, 10:24 pm

Buen tuto sigue asip... todo eso ya lo sabia pero sera muy util para quein este comenzando a hacer mapas =D +rep
10/10

Redsuitheart
Rango: Leyenda
Rango: Leyenda

Masculino

Título : messorem abyssi
Cantidad de envíos : 519
Edad : 25
Localización : México
Fecha de inscripción : 17/10/2011

Volver arriba Ir abajo

Tick Re: [Tutorial] Variables

Mensaje por Ptorres el 16/05/12, 10:48 pm

Oooo

orgasmico tuto


buenisimo!

Ptorres
Rango: Leyenda
Rango: Leyenda

Masculino

Título : Ex moderador, un lugar en
Cantidad de envíos : 611
Localización : en lo mas recóndito de infralar
Fecha de inscripción : 18/12/2010

Volver arriba Ir abajo

Tick Re: [Tutorial] Variables

Mensaje por Hikan el 19/05/12, 12:07 am

veamos

Hikan
Novato

Masculino

Título : Neutral
Cantidad de envíos : 5
Fecha de inscripción : 26/11/2011

Volver arriba Ir abajo

Tick Re: [Tutorial] Variables

Mensaje por Nekkrov el 29/05/12, 10:35 am

yo ya lo sabia pero buen tutorial

Nekkrov
Rango: Élite
Rango: Élite

Masculino

Título : Alpha Group, Spetsnaz
Cantidad de envíos : 1359
Edad : 20
Localización : Moscow, Russia
Fecha de inscripción : 03/09/2011

http://Zkearlev.bl.ee

Volver arriba Ir abajo

Tick Re: [Tutorial] Variables

Mensaje por YEYOXCORE el 15/07/12, 12:06 pm

veamos

YEYOXCORE
Novato

Cantidad de envíos : 3
Fecha de inscripción : 26/06/2008

Volver arriba Ir abajo

Tick Re: [Tutorial] Variables

Mensaje por buni el 15/07/12, 03:01 pm

veamos

buni
Novato

Masculino

Cantidad de envíos : 1
Edad : 19
Fecha de inscripción : 15/07/2012

Volver arriba Ir abajo

Tick Re: [Tutorial] Variables

Mensaje por Copha el 16/07/12, 08:28 pm

+rep

Copha
Rango: Soldado
Rango: Soldado

Masculino

Título : Tauren
Cantidad de envíos : 53
Edad : 26
Localización : Argentina
Fecha de inscripción : 22/11/2010

Volver arriba Ir abajo

Tick Re: [Tutorial] Variables

Mensaje por Nordther el 16/07/12, 10:41 pm

mis +rep y gracias por el tuto me va a venir de anillo al dedo

Nordther
Rango: Soldado
Rango: Soldado

Masculino

Cantidad de envíos : 77
Localización : Colombia-Valle del cauca-Santiago de cali
Fecha de inscripción : 27/05/2012

Volver arriba Ir abajo

Tick Re: [Tutorial] Variables

Mensaje por maoganis el 19/10/12, 10:10 am

[b] |cff00ff00Gracias por el aporte|r [b]

maoganis
Novato

Masculino

Cantidad de envíos : 3
Edad : 20
Localización : Bogotá
Fecha de inscripción : 17/06/2010

Volver arriba Ir abajo

Tick Re: [Tutorial] Variables

Mensaje por Piru el 05/11/12, 10:12 am

Gracias C-va, no sabía que esos eran los spoilers. Está bueno el tutorial, después lo leo detalladamente. +rep

Piru
Rango: Élite
Rango: Élite

Masculino

Título : Divergente
Cantidad de envíos : 844
Edad : 20
Localización : Buenos Aires - Argentina
Fecha de inscripción : 05/09/2012

http://www.piru07.blogspot.es

Volver arriba Ir abajo

Tick Re: [Tutorial] Variables

Mensaje por isosceles el 05/11/12, 12:30 pm

Muy Bueno

isosceles
Rango: Soldado
Rango: Soldado

Masculino

Título : BloodShadow
Cantidad de envíos : 57
Edad : 20
Localización : Luján de cuyo, Mendoza, Argentina
Fecha de inscripción : 05/10/2012

Volver arriba Ir abajo

Tick Re: [Tutorial] Variables

Mensaje por Dockijoe el 08/02/13, 04:40 pm

Lo encuentro muy bueno +rep

_________________________________________________

Dockijoe
Moderador
Moderador

Masculino

Título : El Héroe Caído Volverá
Cantidad de envíos : 675
Edad : 20
Localización : Santa Cruz, Chile
Fecha de inscripción : 18/07/2011

http://www.wowwc3forum.crearforo.net

Volver arriba Ir abajo

Tick Re: [Tutorial] Variables

Mensaje por Cefiro el 08/02/13, 06:54 pm

te ganaste un +rep

_________________________________________________
[Tienes que estar registrado y conectado para ver este vínculo]
albus & fawkes:
_________________________________________________

Cefiro
Moderador Avanzado
Moderador Avanzado

Masculino

Título : Wc3WoW Champion
Cantidad de envíos : 818
Edad : 19
Localización : Wc3WoW Forum
Fecha de inscripción : 15/03/2011

Volver arriba Ir abajo

Tick Re: [Tutorial] Variables

Mensaje por Contenido patrocinado Hoy a las 03:11 pm


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.