Elite™ Posted August 16, 2013 Report Share Posted August 16, 2013 Buenas me gustaria haria hacer 2 dos arrays uno para la experencia y otro para el yang. Y que den un valor del array al azar. Queria hacerlo con estos valores: Exp: 300 800 1500 2500 4300 Yang: 1000 2000 3000 4000 5000 ¿alguien que me eche una mano? Link to comment Share on other sites More sharing options...
Tiico™ Posted August 16, 2013 Report Share Posted August 16, 2013 No entendi , explicame más Link to comment Share on other sites More sharing options...
pepineitor Posted August 16, 2013 Report Share Posted August 16, 2013 Toma, con la información que facilitas no puedo hacer más: quest array begin state start begin when [ITEM].use begin tabla={ [1]={300,800,1500,2500,4300}, [2]={1000,2000,3000,4000,5000} } chat(tabla[1][number(1,5)].." Exp") chat(tabla[2][number(1,5)].." Yang") end endend Cambias [iTEM] por el vnum de tu item(Recuerda que el item tenga type 18 en la base de datos). Salu2. Link to comment Share on other sites More sharing options...
Elite™ Posted August 16, 2013 Author Report Share Posted August 16, 2013 No entendi , explicame más Nose como explicarme pero te voy a poner un ejemplo en el post que creo Keko sobre los arrays puso uno que es el siguiente. say("Te voi a dar un arma aleatoria")say("")local items = {{160,2},{161,1},{162,3}}local arma = select ("OK" , "Cerrar")if arma == 2 then return endpc.give_item2(items[math.random(1,table.getn(items))][1],items[math.random(1,table.getn(items))][2])Bien, ahora en este caaso el juego nos va a dar un arma aleatoria, porque hemos incluido la funcion math.random dentro del array. Tal y como la hemos puesto:[math.random(1,table.getn(items))]Nos dara un resultado que puede estar entre 1 y el numero de subcategorias que tiene la tabla items.-----------------------------------------------------------------------------------------------------------------------------------------------------------------(table.getn(nombretabla)) es una función muy útil que devuelve el número maximo de elementos que tiene una tabla simple o de subcategorias de una compuesta)-----------------------------------------------------------------------------------------------------------------------------------------------------------------Por lo tanto tal y como esta configurada la quest buscara primero la subcategoría, que sera el número aleatorio, y después irá a la posicion dentro de ella que le hemos dicho (1 para la id y 2 para la cantidad) Lo que quiero es hacer lo mismo para los puntos de experiencia y yang. Y que sean aleatorios con la funcion math.random Link to comment Share on other sites More sharing options...
Tiico™ Posted August 16, 2013 Report Share Posted August 16, 2013 Espero mis +1 quest exp_yang begin state start begin when 2900.use begin say_title(" "..pc.get_name().." ") say("Hola , este item te ofrece darte una") say("Cantidad de yang y experiencia para ti.") say_reward("Quieres recibirla") local exp = {300,800,1500,2500,4300} local yang = {1000,2000,3000,4000,5000} local s = select ("OK" , "Cerrar") if s == 2 then return end pc.give_exp2(exp[math.random(1,5)]) pc.changegold(yang[math.random(1,5)]) chat("Haz recibido "..exp([math.random(1,5)]).." de Experiencia.") chat("Haz recibido "..yang([math.random(1,5)]).." de Yang.") end endend Link to comment Share on other sites More sharing options...
Tiico™ Posted August 16, 2013 Report Share Posted August 16, 2013 Toma, con la información que facilitas no puedo hacer más: quest array begin state start begin when [ITEM].use begin tabla={ [1]={300,800,1500,2500,4300}, [2]={1000,2000,3000,4000,5000} } chat(tabla[1][number(1,5)].." Exp") chat(tabla[2][number(1,5)].." Yang") end endend Cambias [iTEM] por el vnum de tu item(Recuerda que el item tenga type 18 en la base de datos). Salu2. pepineitor , por que el "number" deberia ser math.random no ? Link to comment Share on other sites More sharing options...
KeKo Posted August 16, 2013 Report Share Posted August 16, 2013 Otro como pacificador ya ¬¬ local exp = {300},{800},{1500},{2500},{4300} local yang = {1000},{2000},{3000},{4000},{5000} pc.give_exp2(exp[math.random(1,5)]) pc.changegold(yang[math.random(1,5)]) chat("Has recibido "..exp([math.random(1,5)]).." de Experiencia.") chat("Has recibido "..yang([math.random(1,5)]).." de Yang.") Que no hagais un array con mas dentro si no hace falta!!!!! (Aparte de que lo hiciste mal) local exp = {300},{800},{1500},{2500},{4300}local yang = {1000},{2000},{3000},{4000},{5000} local exp = {300,800,1500,2500,4300}local yang = {1000,2000,3000,4000,5000} Y entonces asi esto si que te ira pc.give_exp2(exp[math.random(1,5)]) Del otro modo seria asi pc.give_exp2(exp[math.random(1,5)][1]) Link to comment Share on other sites More sharing options...
PACI Posted August 16, 2013 Report Share Posted August 16, 2013 Otro como pacificador ya ¬¬Pero si yo ya no lo hago ¬¬" Link to comment Share on other sites More sharing options...
KeKo Posted August 16, 2013 Report Share Posted August 16, 2013 Pero si yo ya no lo hago ¬¬" Eso espero e.e Link to comment Share on other sites More sharing options...
PACI Posted August 16, 2013 Report Share Posted August 16, 2013 Eso espero e.e -.-' xD Link to comment Share on other sites More sharing options...
Recommended Posts