Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: NOKAUBURE en Noviembre 12, 2011, 11:40:21 AM

Título: [SOLUCIONADO] checkear solo las primeras letras de una variable?
Publicado por: NOKAUBURE en Noviembre 12, 2011, 11:40:21 AM
Buenas, estoy mirando de simplificar mis codigos. Primero de todo, soy una persona que hace uso excesivo del or, del and, y de las arrays en 1D xP

Como hago para que en vez de poner tanto or, mire que si las primeras letras de la variable son 'veneno' o 'sangrado', ejecuta el codigo??

[gml]if argument0 = 'veneno1' or argument0 = 'veneno2' or argument0 = 'veneno3' or argument0 = 'sangrado1' or argument0 = 'sangrado2' or argument0 = 'sangrado3'
{
buffdamage[repeat4] = 0
}[/gml]

Ese tipo de cosas las tengo en muchisimos sitios y ocupan un espacio increible... (hasta incluso hay codigos con mas de 10 or)

PD: Eso es un trozo de script, creo que no hace falta que lo enganche todo.
Título: Re: checkear solo las primeras letras de una variable?
Publicado por: elviskelley en Noviembre 12, 2011, 01:05:13 PM
y por que no guardas veneno y sagrado como variables, y luego comparas valor.
ejemplo
if (veneno<=3) or (sagrado<=3)
{
buffdamage[repeat4]=0
}
algo asi.
De resto debemos saber mas... que deseas lograr con el codigo.

Título: Re: checkear solo las primeras letras de una variable?
Publicado por: Texic en Noviembre 12, 2011, 01:13:16 PM
As?p
[gml]if string_count("veneno",argument0)<>0 or string_count("sangrado",argument0)<>0
{
buffdamage[repeat4]=0
}[/gml]
Título: Re: checkear solo las primeras letras de una variable?
Publicado por: NOKAUBURE en Noviembre 12, 2011, 01:56:48 PM
Cita de: Texic en Noviembre 12, 2011, 01:13:16 PM
As?p
[gml]if string_count("veneno",argument0)<>0 or string_count("sangrado",argument0)<>0
{
buffdamage[repeat4]=0
}[/gml]

^^ solucionado

el argument0 tenia que ser un string por fuerza, se me olvido especificar eso, pero ya esta arreglado