Estuve pensando y pense quiero hacer que el personaje cuando no se mueva en mi juego suceda tal cosa...
eso seria
if not pad:right() and not pad:left() and not pad:cross() then
sucede tal cosa
end
eso es así verdad?
y por favor respondan
Me acorde de otra cosa y es que cuando pongo musica en el juego la carga bien y todo pero solo suena:¡¡¡¡¡PIPIPIPIPIPIPIPIPIPIIPIP!!!!!!! Y asi sin parar
y no para nunca.
Saben Que puede ser????
Gracias y
Saludos
¡Iníciate en Linux fácilmente! Sólo entra aquí y comprueba que distribución se adapta mejor a tí.
Mi review: iPod Touch 4G
Donde se puede conseguir un
Donde se puede conseguir un convertidor o musica en los formatos validos por el luaplayer de windows
Pues
De Internet, los más comunes son archivos de sonido .WAV.
Por cierto el comando not
Por cierto el comando not si que existe . lo se porque sale en los tutos de elender una forma alternativa de iniciarse en LUA
Saludos
P22
¡Iníciate en Linux fácilmente! Sólo entra aquí y comprueba que distribución se adapta mejor a tí.
Mi review: iPod Touch 4G
de acuerdo la proxima vez
de acuerdo la proxima vez especificare
Gracias creo que te he entendido
Saludos
Cuántas dudas...
Vamos por partes:
Sólo hay una manera de saber si tu código sirve, pruébalo, en vez de decirnos a nosostros, siempre he dicho que la mejor manera de aprender es leyendo y echando a perder.
En todo caso, no sé si funcione, no acostumbro usar el comando not, ni siquiera sabía de su existencia, yo crearía una variable, fuera del bucle y pondría lo siguiente.
como=0
while true do
if pad:cross() then
como=1
else
como=0
end
if como== 1 then
lo que quieres que pase cuando se presione el botón
end
if como==0 then
lo que quieres que pase cuando no se use el botón
end
Ahora, al poner el comando de sonido, se reproducirá infinitamente, es por eso que suena un PIPIPOIPIPIPPIIPIPIPp!!!!! xD.
Lo que puedes hacer es otra variable paralela al sonido.
sonido=0
while true do
if pad:circle() then
sonido = sonido + 1
end
if sonido >= 0 and sonido < 20 then
reproducir sonido
end
if sonido >= 30 then
sonido=0
end
Por cierto yo sé que tu duda es Lua, pero no haría mla que especificaras en qué lenguaje estás programando.
Saludos
NOT no es un comando...
...es un operador lógico. Es algo muy distinto. Por favor, hay que llamar a las cosas por su nombre, porque si no no hacéis más que liar a la gente.
Uno de los pocos, poquísimos realmente imprescindibles.
Por cierto, ya que hablamos de lógica, creo que sería mejor, en vez de:
if pad:cross() then
como=1
else
como=0
end
hacer, simplemente:
como=pad:cross()
No tiene mucho sentido hacer una comparación lógica para asignar un booleano, ¿no? (Sobre todo cuando, en realidad, asignas un entero que después se evalúa como booleano. O sea, una comparación y dos cambios de tipo de datos totalmente inútiles). Y vale que las comparaciones booleanas son de lo más rápido que existe, pero si trufas el código de comparaciones innecesarias, y usas un byte o dos o tres o cuatro cuando necesitas sólo un bit, se te va a demorar porque sí (y resulta más difícil de entender). Una de las máximas de programación que era válida hace 20 años y sigue siéndolo ahora es "nunca hagas nada que no tengas que hacer".
Igualmente, la doble estructura condicional de if a==0/end y if a==1/end tampoco tiene mucho sentido con un booleano, que será falso o verdadero, y punto. Ahí sí que es lógico hacer un if... else.
Strength is irrelevant. Resistance is future. We wish to improve ourselves.
La fuerza es irrelevante. La resistencia es futuro. Queremos mejorarnos.
una pregunta ¿ Que es un
una pregunta ¿ Que es un booleano? Es que no tengo ni idea XD
Saludos
Un tipo de datos, en este caso.
Probablemente ya sepas (aunque no está explicado por ninguna parte de los tutoriales) que hay distintos tipos de datos. Por ejemplo, podemos distinguir entre números y texto (cadenas, en estos nombres técnicos que parecen estar prohibidos: para no liarte, le llamaremos "morcillas", que se ve que si damos un nombre incorrecto liamos menos; le hago caso a Tanos en esto).
Si sumamos 2+2 en números, tenemos 4. Si sumamos 2 y 2 en "morcillas" (texto)... el resultado es "22".
Bueno, pues el booleano es el tipo de datos más pequeño que existe. Ocupa un bit (la mínima unidad de memoria), y convencionalmente se considera que los dos valores posibles que tiene son verdadero y falso. O 0 y 1, Sí y No, Yin y Yang, etcétera etcétera.
Esto es lo que se usa para, entre otras cosas, las estructuras condicionales. Una estructura condicional (llamémosle obelisco minoico, elefante tornasol o spaghetti al pesto) indica qué hacer SI (condicional, no afirmativo) pasa tal cosa, o sea, si "pasa tal cosa" es verdad, y el "else" de después, qué hacer si "pasa tal cosa" es falso. En los botones ya ves que o están apretados o no lo están, pero no pueden estar apretados a medias (a diferencia del joystick analógico, que sí tiene un rango de valores enteros -sin decimales-).
El curioso nombrecito le viene de un matemático llamado Boole, que dio forma matemática a la lógica proposicional aristotélica (de los seguidores de Aristóteles, el filósofo griego discípulo de Platón y maestro de Alejandro Magno). Boole era, creo, que escocés y del s. XIX; en cualquier caso, no se trata de algo especialmente moderno ni propio de los ordenadores, que simplemente tomaron algo que matemáticamente ya existía desde hacía tiempo. Al nivel más profundo de la máquina prácticamente todo funciona con álgebra de Boole (por ejemplo, sumas y restas, multiplicaciones y divisiones...). Booleano, en realidad, significa "relacionado con el álgebra de Boole", no sólo explícitamente el tipo de datos bit/booleano, pero la mayoría de veces que veas "boolean(o)" se referirá al tipo de datos, y no a otra cosa.
Puedes encontrar algo más de información en la Güisquipedia. También podrías buscar ahí el comando not, pero no lo encontrarías. Curiosamente, con la "liosa" denominación de "operador lógico" también puedes encontrar información en la Güisquipedia sobre NOT y los demás, pero no si buscas por la "más clara" denominación de "comando NOT". Estos de la Wiki tendrían que aprender organización, porque llamando "operadores" y no "comandos" a los operadores, no hay quien les entienda ni encuentre lo que busca... :P
Strength is irrelevant. Resistance is future. We wish to improve ourselves.
La fuerza es irrelevante. La resistencia es futuro. Queremos mejorarnos.
Buenas ZYX
Ya ha pasado un poquillo de tiempo desde mi otro comentario, y ya que estoy más tranquilo es hora de aceptar mi garrafal error.
Me ha pasado dos veces, y tú eres testigo: a veces soy muy egocentrista y me dejo llevar por el "calor del momento". Lo peor es que no me fijo en lo que escribo.
Ya pasó con recoco, que, como mencionaste hoy (Ayer, ya es media noche en México :P) lo eché del mundillo de la programación.
Y de nuevo hoy, con una simple corrección tuya.
Nada de sto hubiera pasado si yo hubiera aceptado mi error en el momento exacto.
Pido disculpas a todos por mi actitud egoísta y aprovecho para pedirlas tambien a recoco. Quize ser el único "experimentado" en Lua en toda la comunidad, también por eso pido disculpas.
Saludos
PD: Ya no tarda en salir un nuevo Homebrew de manos de un servidor :P
No me enoja que me corrijan
Pero si me enoja la forma en que lo haces.
Tengo que aclararte unas cosas.
Sé, porque se nota, que tú ya has terminado una ingeniería o quizas un nivel posterior, y entiendo que sepas hasta los secretos más ínfimos de la programación.
Quiero decirte que yo aprendí a programar con los tutoriales de esta cominudad, y si te sirve de algo tengo 14 años.
Me han quedado varias cosas claras, y me gustaría decirte que muchas de las cosas que he leido de ti, las he puedto en paráctica.
Scenebeta, no es una comunidad que se centra en la programación, por lo tanto, creo que es entendible, que el 95% de los usuarios no tengamos un nivel solvente de lo que es programar. Por eso te pido que cambies la forma de expresarte ante las dudas de los demás, en vez de correjirnos de una manera estricta, como si fueramos profesionistas; trata de darnos a conocer nuestros errores de una forma más educada (No estoy diciendo que no seas educado ;-)), porque en realidad, creo que estás liando más a los ususarios que yo.
En mi otro comentario mencioné que no tenía idea de la existencia de NOT, por lo tanto se sobreentiende que no sé si es un comando o un operador lógico.
Saludos
[OT] Campo de PRODO
Que es una cosa del Autoestopista Galáctico.
Y no viene a cuento de nada...salvo a que tú y yo, Tanos, hemos escrito simultáneamente. En el mensaje originario decía otras cosas. Éste no dice nada (toma frase autorreferente). Es perfectamente borrable.
De hecho, este debe ser el primer mensaje suicida de Scenebeta.
Pelillos a la mar, Tanos, y un abrazo.
Strength is irrelevant. Resistance is future. We wish to improve ourselves.
La fuerza es irrelevante. La resistencia es futuro. Queremos mejorarnos.
Vamos
Que he respondido a este comentario gracias a la referencia con nombrar las cosas incorrectamente, que fue eso lo que me hizo ver mi error, al quedarme sin argumentos.
Saludos
Todo va bien si acaba bien :)
Acepto, sin reparos, que he sido bastante chinchilla con esas alusiones, y que eran del estilo de "huyyyy pero qué gracia tiene el j@#!o.. toda en el ªª$%@#!!". La verdad es que también iba algo "calentado", porque hoy no era la primera del estilo, y la, ehem, broma iba de "gññññ in-ten-te-mos no saltarle a la yugular a nadie"... y que el mensaje gana sin esas cosas.
Pero el chiste de los vulcanianos, que nadie me lo quite de los operadores lógicos, ¿eh? Que, si no, me enfadaré mucho y levantaré la ceja izquierda :D
Off-the-record... una cosa que sí tiene su gracia es que... en realidad estudié Filología Clásica, uséase latín y griego (clásico, en el moderno sólo sé pedir un güisqui e insultar de dos maneras). Y lo que he estudiado o tiene que ver con eso (un apasionante curso de extensión universitaria sobre Prosopografía Cristiana de la Antigüedad Tardía), o con nada de nada (un par de años de Psicología, el 1º y el 2º de 1º; un curso de agente de seguros...)... lo único que he estudiado así regularmente de ordenadores fue un cursillo de Authorware 3.0, allá por el siglo pasado (en el 96, creo que fue). El resto, pues 20 años de autodidactismo... (Ahora mismo, soy un grácil jovenzuelo a unos meses de cumplir los veintiquince años... ¡Y "jamás me había sentido tan joven", atjó atjóoo atjuá koff aggh).
Strength is irrelevant. Resistance is future. We wish to improve ourselves.
La fuerza es irrelevante. La resistencia es futuro. Queremos mejorarnos.
Si me lo dices a mi yo tengo
Si me lo dices a mi yo tengo 12 años
No
Me refiero al comentario de ZYX.
Por cierto, da gusto ver gente jóven interesada en la informática :P
Saludos, y espero ver algún día un Homebrew tuyo.
Ya estoy preparando uno . Es
Ya estoy preparando uno . Es un juego y si tengo tantas dudas es por eso.
Tambien se me ocurrio hacer un tamagochi para la psp pero eso sera cuando acabe el de ahora.( X fa no me plagien)
Saludos
¡Iníciate en Linux fácilmente! Sólo entra aquí y comprueba que distribución se adapta mejor a tí.
Mi review: iPod Touch 4G
Yo tampoco..
Sabia de la existencia del operador NOT en Lua pero si en C y como su propio nombre indica significa negacion:
fuera de terminos de programacion viene a ser el caso de:
NOT -> -
-(5) = -5
Salu2
¡Visca el Barça y Viva España!
esos no son los operadores
esos no son los operadores logicos (NOT, OR, AND)?... no son indispensables para programar?
Efectivamente: son (música siniestra) los operadores lógicos.
Que, aclaremos para los trekkies no dados a la informática, no son cirujanos de Vulcano. Lo siento, tendrán que buscar a otros para afilarles las orejas.
Coñas aparte, sí son, efectivamente, los operadores lógicos. Yo matizaría que son indispensables para programar mínimamente bien (esos tres al menos, que son los básicos; añádansele el imprescindible EQV o igualdad/identidad). Siempre puedes buscar métodos alternativos... pero sí que resulta prácticamente imposible programar sin ningún operador lógico (creo yo, vaya; no veo cómo se podría evaluar, p.e., una igualdad o desigualdad entre cadenas sin el operador EQV o igual a, a no ser que se iterara toda la cadena, se compararan los códigos ASCII de todos los caracteres aritméticamente y alguna virguería más que me dejo, para evitar el NOT (carAsc<carAscComparado OR carAsc>carAscComparado). Terriblemente ineficiente y oscuro).
Digo, ya de paso, que cuando dije que el operador NOT era imprescindible, me refería a que es insustituible por otros. Pongamos por ejemplo el caso de XOR, la disyuntiva lógica exclusiva, que da verdadero sólo cuando p o q son verdaderos, pero no ambos. Un p XOR q se puede expresar perfectamente como (p OR q) AND NOT (p AND q). Ergo, XOR es "prescindible". Obviamente, es más comprensible p XOR q que este mamotreto, especialmente si vamos a meter más de una comparación (imaginad traducir a este formato algo como (p XOR q) XOR (r XOR s), p.e.).
Pero vaya, hechas las excepciones de rigor, convengo contigo, incluso quizá soy más radical; EMHO, antes de empezar a saludar al mundo (ése integrado, normalmente, por un único programador), cualquiera que quisiera iniciarse en el vudú computacional y la alquimia informática debería empezar por dominar estos tres (el EQV suele estar bien asumido), cosa que puede hacerse hasta con lápiz y papel, y son esenciales en todo idioma de promagación...
Strength is irrelevant. Resistance is future. We wish to improve ourselves.
La fuerza es irrelevante. La resistencia es futuro. Queremos mejorarnos.