Jump to content

Croqueta

Miembro
  • Contador contenido

    205
  • Ingreso

  • Última visita

  • Días ganados

    8

Actividad de reputación

  1. Me Gusta
    Croqueta got a reaction from Marcos Pinheiro in [Mini-R]Editor para lua   
    Holla,
    para la gente que qiera un editor de lua
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. es un direkt link.
     
    el Programm se llama SciTe y es mi favorido para trabajar con tablas en lua, con ese editor ise por ejemplo el itemshop completo en lua despues, lo escribi en Metin.
  2. Me Gusta
    Croqueta got a reaction from Lincoln in pc.give_item2_select() para >34k game   
    function pc.give_item2_select(...) local tmp = { ['Alt']={}, ['Neu']={} } for i =0,89 do item.select_cell(i) if not tmp.Alt[item.get_id()] then tmp.Alt[item.get_id()] = i end end if table.getn(arg)< 2 then pc.give_item2(arg[1]) else pc.give_item2(arg[1],arg[2]) end for i =0,89 do item.select_cell(i) if not tmp.Neu[item.get_id()] then tmp.Neu[item.get_id()] = i end end local data = {{},{}} for id,slot in next,tmp.Alt do table.insert(data[1],slot) end for id,slot in next,tmp.Neu do table.insert(data[2],slot) end table.sort(data[1]);table.sort(data[2]) for i = 1,table.getn(data[1]) do for i = 1,table.getn(data[2]) do if data[1][i] ~= data[2][i] then item.select_cell(data[2][i]) return end end endend te da un item y selectiona por ejemplo:
    quest test begin state start begin when login begin pc.give_item2_select(19)-- te da el item y te lo selectiona for i = 0,6 do -- 0-6 = 7 bonus item.set_value(i,1,50000)-- espada+9 con 50000 TP-Bonus end end endend La funcion es para la game rev q es menos de 34k por q esa funcion ai no existe
     
    Para los expertos de ustedes en Lua, una simulasion de el 'Inventory'
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  3. Me Gusta
    Croqueta got a reaction from elkumanes in [Release]Cubo de basura   
    aqi esta un cubo de basura con la quest
    un screen de el cubo de basura. mi amigo hiro iso el modello jo la quest.
    cuando el jugador pone el item que qiere borrar en el cubo, te da dos optiones, si qieres borrar el ite o no.
    cuando selectiones a si entonses el item con la cantidad se borra de du inventar.
     


    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  4. Me Gusta
    Croqueta got a reaction from clocki in [Release]Killcount   
    Contador de muertes:
     
    Cuenta cuando matas a los jugadores del reino amarillo, azul, rojo, monstruos o los jugadores de tu reino.
    Cuando matas a un jugador de tu reino se baja 1 punto del los puntos en el reino en el que esteas.


    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  5. Me Gusta
    Croqueta got a reaction from Cantimploras Strm in [PETICION]Quest Individuales para Caballo ^^,   
    esta quest es para todos los caballos
    una imagen, para ver como se ve en el juego
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. questlib.lua:

    pferd_quest_table={ [25]={50051,1,100000,101,20}, [35]={50052,11,250000,102,50}, [50]={50053,21,400000,103,100} }
    {50051,1,100000,101,20},
    Todo es editable:
     
    50051: es el libro para llamar el caballo
    1: es el nivel de el caballo
    100000: es el dinero q gana por la quest
    101: es el bicho q nesesita matar
    20: es cantidad q tiene q matar para q la quest se termine
     
    Quest:
     

    quest pferd_quest begin state start begin when levelup with type(pferd_quest_table[pc.get_level()])=='table' begin q.set_counter("kills",pferd_quest_table[pc.get_level()][5]) pc.setqf("kills",pferd_quest_table[pc.get_level()][5]) setstate(status) end end state status begin when letter begin send_letter("Caballo quest") end when button or info begin say_title("Caballo quest") say() say("Para la quest del Caballo "..pferd_quest_table[pc.get_level()][2]) say("tienes q matar "..pferd_quest_table[pc.get_level()][5].."x "..mob_name(pferd_quest_table[pc.get_level()][4])) say() say_reward("tienes q matar "..pc.getqf("kills").."x "..mob_name(pferd_quest_table[pc.get_level()][4])) end when kill with not npc.is_pc() and npc.get_race()==pferd_quest_table[pc.get_level()][4] begin local count = pc.getqf("kills") - 1 if count <= pferd_quest_table[pc.get_level()][5] then pc.setqf("kills", count) q.set_counter("kills", count) end if count == 0 then say("Felicidades") say_reward("nivel de caballo "..pferd_quest_table[pc.get_level()][2]) pc.give_item2(pferd_quest_table[pc.get_level()][1], 1) horse.set_level(pferd_quest_table[pc.get_level()][2]) pc.change_money(pferd_quest_table[pc.get_level()][3]) clear_letter() restart_quest() end end end end
  6. Me Gusta
    Croqueta got a reaction from clanco365 in Funciones de Quests 90% de todos [español]   
    disculpanme por mi espanol, no e escrito mas que 11 anos :DD
    en espanol y para todos una data para cargar
     

    item.get_cell() no se tiene que escribir nada en las parentesis Beschreibung: -- gibt bei take und use das Aktuell benutzte Item aus. esplicasion: --para el "take" y "use" de el actual item volver: false wenn ein fehler aufgetreten ist ansonsten die Zellennumer im Inventar quando es false tienes que escojer un lugar del invantario item.select_cell(slot) selectiona el slot de el inventario esplicasion: --selectiona el item y ase que los comandos lo selectiona revolver: Boolean item.get_socket(socketid) sockel nummemero 0 asta 2 sockel0 hueco1 , sockel1 hueco2 ... asta 3 esplicasion: -- esa funcion qiere desir que te da el "id" del item que esta en el hueco revolver: false o el vnum del item item.remove(void) no se tiene que escribir nada en las parentesis esplicasion: -- borra el item selectionado revolver: nada item.get_id(void) no se tiene que escribir nada en las parentesis esplicasion: -- te da el id del item selectionado revolve: false o el id del item item.select(itemid) en las parentesis da el ID del item esplicasion: -- selectiona el item con el id y ase que los comandos lo selectiona revolve: Boolean item.get_count(void) no se tiene que escribir nada en las parentesis esplicasion: -- cuenta la cantidad de el selectionado item como 50 perlas revuelve: false o count item.get_level(void) no se tiene que escribir nada en las parentesis esplicasion: --te pregunta si el item es arma+1=1 devolver: +0= 0; +1=1 item.get_name(void) no se tiene que escribir nada en las parentesis revolver: nombre del item selectionado item.get_refine_vnum(void) no se tiene que escribir nada en las parentesis revolver: refined_vnum del item selectionado item.get_size(void) no se tiene que escribir nada en las parentesis revolver: tamaño del item selectionado -> en la database size item.get_sub_type(void) no se tiene que escribir nada en las parentesis revolver: subtype del item selectionado item.get_type(void) no se tiene que escribir nada en las parentesis revolver: type del item selectionado item.get_value(value) no se tiene que escribir nada en las parentesis revolver: el valor del item selectionado (value= value1 -> value5) item.get_vnum(void) no se tiene que escribir nada en las parentesis revolver: el vnum del item selectionado item.has_flag(flag) valor: flag esplicasion: -- chequa qual flag el item tiene revolver: Boolean item.set_socket(socketnum, value) valor: el numero del hueco y el valor que se qiera poner esplicasion: -- se pone en el hueco un item del selectionado item (sockelnum max =2) game.drop_item_with_ownership(item_vnum, anzahl) esplicasion: -- soltar objetos con su nombre ariba(el nombre se ve 10 segundos) game.drop_item(item_vnum, anzahl) esplicasion: -- solta un item __give_char_priv(rate_type, rate) esplicasion: -- le da el jugador selectionado un Bonus como yang, exp, caer objetos o yangbombas valor: rate_type = 1 asta 4 (YANG, DROP, YANGBOMB, EXP) rate= valor __get_empire_priv_string() esplicasion: -- le pregunta el actual bunus de un mondo en un string __give_empire_prive(empire, rate_type, rate, time) -- le da un mundo un bonus esplicasion: -- le da a 1 o a todo los mundos un bonus valor: rate_type= 1-4 (DROP, GOLD_DROP,TEN_GOLD_DROP, EXP) empire= 0-3 ; 0= todos los mundos __getnpcid(npc_name) esplicasion: -- te da el ID del npc si escribes el valor del npc is_test_server() esplicasion: -- te pregunta con un boolenvalor si es un testserver o no kill_all_in_map(mapindex) esplicasion: -- mata a todos los npc y monstros en la mapa puede ser que jugadores tambien valor: mapindex de la mapa bool_to_str() esplicasion: --transforma el boolinvalor en un string (si o no)("true" o "false") cmdchat(clientCMD) esplicasion: -- manda un comando en el chat channel del cliento se usa para abrir una tienda o para desir si el item fallo o esas cosas Wird genutzt für Sachen wie das öffnen eines Privaten Ladens oder die Meldungen beim Uppen command(cmd) esplicasion: -- como el comando "/" jugadores no pueden usar todos enable_over9refine(int, int) esplicasion: -- / valor: / regen_in_map(mapindex, path) esplicasion: -- carga la data de regen con el path y activa la en la mapindex de la mapa say_in_map(mapindex, text) esplicasion: -- como say pereo solo en la mapindex de la mapa (todos que esta en la mapa lo puede leer) set_quest_state(questname, state) esplicasion: -- pone en la quest un state y la activa(la quest con el nombre comienza) set_skin(skin_type) esplicasion: -- pone el estilo de la quest (como se ve en el juego) syschat(text) esplicasion: -- el texto que escribes se ve en el metin2 ventana para el jugador syserr(text) esplicasion: -- escribe en el chat algo falso de la quest si es un test_server time_to_str() esplicasion: -- da el actual tiempo en un string warp_all_to_village(mapindex, time) esplicasion: -- teleporta todo los jugadores en su mapa1 con el mapindex -- timer: da el tiempo que necesita para teleportar warp_to_village() esplicasion: -- teleporta el actual jugador en su mapa1 affect.add(applytype, applyvalue, time) esplicasion: -- te da un affect con el tipo 1000 asi se puede dar mas affect -- applytype son de 1 a 80 (los bonus ID) affect.remove() esplicasion: -- borra los affext type (223 no se puede borrar) Tip:210 = GM Stun 211 = GM Slow 203 = invisible 223 = chatbloc 500 asta 509 = EXP Bonus ... 514 = cabello 532 = caballo affect.remove_all_collect() esplicasion: -- borra todos los affect= bio quest affect affect.remove_bad() esplicasion: -- borra todos los negativos efectos como beneo, quemar ... affect.remove_good() esplicasion: --borry todos los positivos effectos como los buffs affect.remove_hair() esplicasion: -- borra el cabello building.get_land_id() -- te da el Id de el reino building.get_land_info() -- te da informasion de el reino building.has_land() -- tiene reino 0 o 1? building.set_land_owner() -- se pone el senor del reino char_log() -- escribe algo en el log tablo? clear_server_timer() -- borra el tiempo del server clearmapsignal() -- borra el punto de la map cleartimer() -- borrar el timer color(r,g,b) -- color rgb complete_quest() -- cierra la quest complete_quest_state() -- complete sate confirm() -- confirmar si no? sys_log() -- escribe algo en el system log? d.check_eliminated() -- controla si todos los monstros estan eliminados solo en los dungeons. d.clear_regen() -- para los respawns en los dungeons. d.count_monster() -- cuenta los monstros en el dungeon d.exit() -- jugador sale del dungeon d.exit_all() -- todos los jugadores salen del dungeon d.exit_all_to_start_position() -- todos enpiezan de start d.get_kill_mob_count() -- te da un numero de los eliminados monstros en el dungeon d.get_kill_stone_count() -- te da un numero de los eliminados metins en el dungeon d.get_map_index() -- Dungeon Map Index d.getf() -- Dungeon Flag d.is_unique_dead() -- se murio algien? d.is_use_potion() -- uso uno un pott? d.join() -- entrar un gruppo en el dungeon d.jump_all() -- teleportart todos a un punto de el Dungeon d.jump_all_local() -- teleporta todos local en el dungeon d.kill_unique() -- murio solo uno? d.new_jump() -- nuevo Warp d.new_jump_all() -- todos los jugadores teleportan de nuevo. d.purge() -- borrar todos los monstros en el dungeon como(/purge) d.purge_unique() -- uno o unos monstros borrarlo en el dungeon d.regen_file() -- cargar el regen file de monstros del dungeon d.revived() -- revivido d.select() -- selectionar el dungeon d.set_dest() -- pone un fin al dungeon d.set_exit_all_at_eliminate() -- cuando un enemigo murio todos salen del dungeon d.set_regen_file() -- pone el regen file del dungeon d.set_unique() -- pone solo uno en el Dungeon d.set_warp_at_eliminate() -- teleporta cuando enemigo murio d.setf() -- pone a el dungeon una flag d.spawn() -- llama un monstro en el dungeon d.spawn_goto_mob() -- llama un monstro en el dungeon y te teleportas donde el esta d.spawn_group() -- llama un grupo en el dungeon d.spawn_mob() -- llama un mostro en el grupo d.spawn_move_group() -- llama un grupo y move? d.spawn_move_unique() -- llama un monstro y move? d.spawn_name_mob() -- llama un monstro con nombre? d.spawn_stone_door() -- llama una puerta de piedra d.spawn_unique() -- llama uno d.spawn_wooden_door() -- llama una puerta de madera d.unique_get_hp_perc() -- te da el nombre de un monstro o jugador no se d.unique_set_def_grade() -- poner la defensa de un monstro o jugador d.unique_set_hp() -- poner la vida de un monstro o jugador no se d.unique_set_maxhp() -- poner maximal vida de un monstro o jugador no se delay() -- esperar find_npc_by_vnum() -- buscar un npc con el vnum find_pc_by_name() -- burca un jugador con el nombre find_pc_cond() -- buscar un jugador que tiene la condicion game.drop_item() -- soltar objetos game.get_event_flag() -- preguntas por el event_flag game.get_guild_name() -- preguntas por el nombre de gremio game.get_safebox_level() -- preguntas por el tamano de eö almacen game.get_warp_guild_war_list() -- te da la lista de gremio guerra game.open_mall() -- abrir el itemshop almacen game.open_safebox() -- abrir el almacen game.request_make_guild() -- te pregunta die qieres aser un gremio game.set_event_flag() -- pone el event_flag game.set_safebox_level() -- poner el tamano del almacen get_global_time() -- pone el global timepo get_locale() -- te da la selectionada locale get_server_timer_arg() -- te da el servertimer get_time() -- te da el tiempo guild.around_ranking_string() -- te da el guild ranking en uns string guild.get_any_war() -- te da todos los gremios que estan en guerra guild.get_ladder_point() -- te da los puntos del lider guild.get_name() -- te da el nombre del gremio guild.get_rank() -- te da el rank del gremio guild.get_reserve_war_table() -- lista de guerra guild.get_warp_war_list() -- liste de guerra warplist guild.high_ranking_string() -- Highscore al String (gremio) guild.is_bet() -- se aposto al el gremio? guild.is_war() -- preguntar si el gremio entra en guerra guild.level() -- pregunta qual nivel el gremio tiene guild.name() -- te da el nombre del gremio guild.war_bet() -- posta al gremio de guerra guild.war_enter() -- entrar en guerra con el gremio horse.advance() -- poner el caballo 1 lvlup horse.feed() -- darle el caballo algo de comer horse.get_grade() -- darle el rank del caballo horse.get_health() -- darle vida a el caballo horse.get_health_pct() -- vida de caballo en por cineto horse.get_hp() -- te da la vida de el caballo horse.get_level() -- te da el nivel del caballo horse.get_stamina() -- te da el sp del caballo (resistencia) horse.get_stamina_pct() -- t da el sp del caballo en por ciento horse.is_dead() -- el caballo esta muerto? horse.is_mine -- es mi caballo horse.is_riding() -- estoi ariba del caballo horse.revive() -- revivir el caballo horse.ride() -- monatar el caballo horse.set_level() -- poner el nivel de el caballo horse.summon() -- llamar el caballo horse.unride() -- decmontarse del caballo horse.unsummon() -- retirar el caballo input() -- input donde puedes escribir algo is_test_server() -- te pregunta soe es un testserver loop_timer() -- Loop Timer npc.is_quest() -- pregunta si un npc esta usado en una quest pc.change_gold() -- cambiar el yang pc.change_money() -- cambiar el yang pc.change_sp() -- cambiar el sp pc.changealignment() -- cambiar el rango pc.changegold() -- cambiar el yang pc.changemoney() -- cambiar el yang pc.clear_skill() -- borrar habilidad pc.clear_sub_skill() -- borrar sub habilidad pc.clear_one_skill() -- borrar una habilidad pc.count_item() -- contar un item del jugador pc.countitem()-- contar un item del jugador pc.delqf() -- borrar lo que esta en la quest tabale pc.destroy_guild() -- borrar el gremio pc.enough_inventory() -- controla si en el inventario ai espacio pc.forget_my_attacker() -- el monstro no te ataquea pc.get_armor() -- te da la armadura que usas pc.get_empire() -- te da el mundo en que estas pc.get_equip_refine_level() pc.get_exp() -- el exp que tienes en momento pc.get_gold() -- el yang que tienes en momento pc.get_guild() -- el gremio que estas en momento pc.get_horse_level() -- el nivel de tu caballo pc.get_hp() -- la vida que tienes en momento pc.get_job() -- tu categoria ninja, sura... pc.get_leadership() -- el lider pc.get_level() -- el nivel que tienes en momento pc.get_local_x() -- tu coordinacion x pc.get_local_y() -- tu coordinacion y pc.get_map_index() -- map index pc.get_max_hp() -- max hp del jugador pc.get_max_sp() -- max sp del jugador pc.get_money() -- el exp del jugador en momento pc.get_name() -- nombre del jugador pc.get_next_exp() -- cuanto exp para lvl up pc.get_part() pc.get_playtime() -- tiempo del jugador pc.get_sex() -- sexo del jugador pc.get_skill_level() -- habilidad nivel pc.get_sp() -- sp del jugador en momento pc.get_start_location() pc.get_vid() pc.get_war_map() pc.get_weapon() -- arma del jugador pc.get_x() pc.get_y() pc.getarmor() pc.getcurrentmapindex() pc.getempire() pc.getf() pc.getgold() pc.getguild() pc.gethp() pc.getleadership() pc.getmaxhp() pc.getmaxsp() pc.getmoney() pc.getname() pc.getplaytime() pc.getqf(name) pc.get_skill_group() pc.getsp() pc.getweapon() pc.getx() pc.gety() pc.give_exp(exp) pc.give_exp2(exp) pc.give_exp_perc(percent) pc.give_gold(gold) pc.give_item(vnum)-- te da el rango revuelvo pc.give_item2(vnum) -- le das un item (vnum) pc.give_item_from_special_item_group(is_item?) pc.give_lotto() pc.has_guild() -- es en un gremio si(1)o no(0) pc.has_master_skill() -- tienes algo en M1 si(1) o no(0) pc.hasguild() -- es en un gremio si(1)o no(0) pc.have_map_scroll() pc.have_pos_scroll() pc.in_dungeon() -- es en un dungeon si(1) o no(0) pc.is_guild_master() -- es el lider del gremio si(1) o no (2) pc.is_horse_alive() -- el caballo bive si(1) o no(0) pc.is_married() -- esta casado si(1) o no(0) pc.is_mount() -- esta monteado pc.is_polymorphed() -- transformado si(1) o no(0) pc.isguildmaster() -- es el lider del gremio si(1) o no (2) pc.mount(vnum,time) -- montar al caballo (vnum, tiempo) 60*60*24*.. (segundos*minutos*horas*dias*semanas*meses*anos) pc.pc_attract_ranger() -- distancia pc.polymorph(mob_vnum) -- transformar el jugador pc.refine_equip() -- mejorar el objectivo pc.remove_from_guild() -- borrar un jugador de gremio pc.remove_item(item_vnum) -- borrar un item del inventario pc.remove_polymorph() -- revolver la transformasion pc.removeitem() -- borrar un item del inventario pc.reset_point() -- borrar puntos de status? pc.revive_horse() -- revivir el caballo pc.select() -- selectional pc.set_part() -- poner un part como cabello pc.set_warp_location() pc.set_warp_location_local() pc.setf() -- lo mismo como setqf pc.setqf(name,value) pc.set_skill_group() --cambiar la clasificion pc.set_skill_level() -- cambiar la nivel de habilidad pc.unmount() -- demontarse pc.warp() -- teleportarse pc.warp_exit() -- teleportarse para salida pc.warp_local() -- teleportarse local como Tele-Hack pc.warp_to_guild_war_observer_position() -- teleportarse para el npc de gremio pc.is_clear_skill_group() pc_find_skill_teacher_vid() -- clasicasion de maestro pc_find_square_guard_vid() pc_get_exp_bonus() --te da el exp bonus pc_get_village_map_index() -- te da el mapindex de mapa1 pc_is_novice() -- si el jugador es principante no mas que 15 y no menos que 5 raw_script() restart_quest() -- se pone el state de la quest a start say() -- simple [sAY] say_npc_name() -- dise el nombre del npc say_pc_name() -- dise el normbre del jugador say_reward() -- dise un texto en rojo say_title() -- dise el titulo say_item() -- dise el nombre del item say_item_vnum()--ensena el item con imagine select() -- para selectionar optiones target.clear() target.delete() target.id() target.npc() target.pc() target.pos() target.vid() test_chat() time_hour_to_sec() time_min_to_sec() type() pc.is_engaged() -- esta el jugador casado string.format() pc.is_gm() -- es el jugador un gm si(1) no (2) pc.get_gm_level() -- qual nivel tiene el gm implemen.. pc.get_alignment() -- cambia el rango del jugador pc.get_real_alignment() -- cambia el rango a normal pc.learn_grand_master_skill() -- poner la habilidad a G1 o P (sube siempre a 1) pc.is_skill_book_no_delay() -- si el jugador uso una exxo si(1) no(2) pc.remove_skill_book_no_delay() -- borra el efecto de exxo

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  7. Me Gusta
    Croqueta got a reaction from AinCrad in [PETICION]Quest Individuales para Caballo ^^,   
    esta quest es para todos los caballos
    una imagen, para ver como se ve en el juego
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. questlib.lua:

    pferd_quest_table={ [25]={50051,1,100000,101,20}, [35]={50052,11,250000,102,50}, [50]={50053,21,400000,103,100} }
    {50051,1,100000,101,20},
    Todo es editable:
     
    50051: es el libro para llamar el caballo
    1: es el nivel de el caballo
    100000: es el dinero q gana por la quest
    101: es el bicho q nesesita matar
    20: es cantidad q tiene q matar para q la quest se termine
     
    Quest:
     

    quest pferd_quest begin state start begin when levelup with type(pferd_quest_table[pc.get_level()])=='table' begin q.set_counter("kills",pferd_quest_table[pc.get_level()][5]) pc.setqf("kills",pferd_quest_table[pc.get_level()][5]) setstate(status) end end state status begin when letter begin send_letter("Caballo quest") end when button or info begin say_title("Caballo quest") say() say("Para la quest del Caballo "..pferd_quest_table[pc.get_level()][2]) say("tienes q matar "..pferd_quest_table[pc.get_level()][5].."x "..mob_name(pferd_quest_table[pc.get_level()][4])) say() say_reward("tienes q matar "..pc.getqf("kills").."x "..mob_name(pferd_quest_table[pc.get_level()][4])) end when kill with not npc.is_pc() and npc.get_race()==pferd_quest_table[pc.get_level()][4] begin local count = pc.getqf("kills") - 1 if count <= pferd_quest_table[pc.get_level()][5] then pc.setqf("kills", count) q.set_counter("kills", count) end if count == 0 then say("Felicidades") say_reward("nivel de caballo "..pferd_quest_table[pc.get_level()][2]) pc.give_item2(pferd_quest_table[pc.get_level()][1], 1) horse.set_level(pferd_quest_table[pc.get_level()][2]) pc.change_money(pferd_quest_table[pc.get_level()][3]) clear_letter() restart_quest() end end end end
  8. Me Gusta
    Croqueta got a reaction from andercitox in Error en esta quest de evento..   
    aqi esta la quest

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  9. Me Gusta
    Croqueta got a reaction from Ícaro Quin in [Release]Killcount   
    Contador de muertes:
     
    Cuenta cuando matas a los jugadores del reino amarillo, azul, rojo, monstruos o los jugadores de tu reino.
    Cuando matas a un jugador de tu reino se baja 1 punto del los puntos en el reino en el que esteas.


    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  10. Me Gusta
    Croqueta got a reaction from FlyAndFail in Creador de Items   
    la Quest funciona basica a mysql ella ase items y te lo pone en el Inventario(se tiene que desconectar despues para que el item aparesca)
    lo ise en una hora no me critican mucho por que no la tradusi jeje^^
     
    INFORMASION!!
    *************************************************
    TODOS LOS SAYS SE PUEDEN EDITAR
    *************************************************

    --© by Noa quest crate_item begin state start begin when 9009.chat."Item Herstellen" begin local iex= mysql_query("SELECT vnum FROM player.item_proto;") local name = pc.get_name() say("Hallo ud Willkommen im Item-Laden") say() say("Da du eine besondere Person bist kannst du dir ein item nach") say("Wunsch Herstellen.") local s=select("Waffe","Rüstung","Standard-Items","Abbrechen") if s==4 then return end if s==1 or s==2 then say("Gib die vnum des items ein") local iexi= input() say() say("gib die Position des items ein wo es im itemshoplager auftauchen soll") say() local pos= input() say() say("Gib die Steine ein, in platz 1-3") say() say("Slot1") say() local put1=input() say() say("Slot2") say() local put2=input() say() say("Slot3") say() local put3=input() say() -----------------------boni1------------------------------- say("Boni 1 (ID Findest du in der liste)") local boni0 = input() --boni say() say("menge für boni1") --menge local menge0= input() -----------------------boni2------------------------------- say("Boni 2 (ID Findest du in der liste)") local boni1 = input() --boni say() say("menge für boni2") --menge local menge1= input() -----------------------boni3------------------------------- say("Boni 3 (ID Findest du in der liste)") local boni2 = input() --boni say() say("menge für boni3") --menge local menge2= input() -----------------------boni4------------------------------- say("Boni 4 (ID Findest du in der liste)") local boni3 = input() --boni say() say("menge für boni4") --menge local menge3= input() -----------------------boni5------------------------------- say("Boni 5 (ID Findest du in der liste)") local boni4 = input() --boni say() say("menge für boni5") local menge4= input() ---------------------Spezialboni6------------------------------- say("Spezialboni 6 (ID Findest du in der liste)") local boni5 = input() --boni say() say("menge für boni6") local menge5= input() ---------------------Spezialboni7------------------------------- say("Spezialboni 7 (ID Findest du in der liste)") local boni6 = input() --boni say() say("menge für boni7") local menge6= input() say() say("Dieses item erstellen?") say_item_vnum(iexi) say("Stein 1: "..item_name(put1)) say("Stein 2: "..item_name(put2)) say("Stein 3: "..item_name(put3)) say("Boni 1: "..boni0.." Menge : "..menge0) say("Boni 2: "..boni1.." Menge : "..menge1) say("Boni 3: "..boni2.." Menge : "..menge2) say("Boni 4: "..boni3.." Menge : "..menge3) say("Boni 5: "..boni4.." Menge : "..menge4) say("Boni 6: "..boni5.." Menge : "..menge5) say("Boni 7: "..boni6.." Menge : "..menge6) if select("Herstellen","Abbrechen")==1 then mysql_query("INSERT INTO player.item SET id= id+1 ,owner_id= (SELECT id FROM player.player WHERE name = '" ..name.. "'),window= 'INVENTORY', pos= '"..pos.."', count= '1', vnum= '"..iexi.."', socket0= '"..put1.."',socket1= '"..put2.."',socket2= '"..put3.."',socket3= '0',socket4= '0',socket5= '0', attrtype0= '"..boni0.."',attrvalue0='"..menge0.."', attrtype1= '"..boni1.."',attrvalue1= '"..menge1.."',attrtype2= '"..boni2.."',attrvalue2= '"..menge2.."',attrtype3= '"..boni3.."',attrvalue3= '"..menge3.."',attrtype4= '"..boni4.."',attrvalue4= '"..menge4.."',attrtype5= '"..boni5.."',attrvalue5= '"..menge5.."',attrtype6= '"..boni6.."',attrvalue6= '"..menge6.."';") else return end end end end end
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  11. Me Gusta
    Croqueta got a reaction from zhas77 in [PETICION]Quest Individuales para Caballo ^^,   
    esta quest es para todos los caballos
    una imagen, para ver como se ve en el juego
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. questlib.lua:

    pferd_quest_table={ [25]={50051,1,100000,101,20}, [35]={50052,11,250000,102,50}, [50]={50053,21,400000,103,100} }
    {50051,1,100000,101,20},
    Todo es editable:
     
    50051: es el libro para llamar el caballo
    1: es el nivel de el caballo
    100000: es el dinero q gana por la quest
    101: es el bicho q nesesita matar
    20: es cantidad q tiene q matar para q la quest se termine
     
    Quest:
     

    quest pferd_quest begin state start begin when levelup with type(pferd_quest_table[pc.get_level()])=='table' begin q.set_counter("kills",pferd_quest_table[pc.get_level()][5]) pc.setqf("kills",pferd_quest_table[pc.get_level()][5]) setstate(status) end end state status begin when letter begin send_letter("Caballo quest") end when button or info begin say_title("Caballo quest") say() say("Para la quest del Caballo "..pferd_quest_table[pc.get_level()][2]) say("tienes q matar "..pferd_quest_table[pc.get_level()][5].."x "..mob_name(pferd_quest_table[pc.get_level()][4])) say() say_reward("tienes q matar "..pc.getqf("kills").."x "..mob_name(pferd_quest_table[pc.get_level()][4])) end when kill with not npc.is_pc() and npc.get_race()==pferd_quest_table[pc.get_level()][4] begin local count = pc.getqf("kills") - 1 if count <= pferd_quest_table[pc.get_level()][5] then pc.setqf("kills", count) q.set_counter("kills", count) end if count == 0 then say("Felicidades") say_reward("nivel de caballo "..pferd_quest_table[pc.get_level()][2]) pc.give_item2(pferd_quest_table[pc.get_level()][1], 1) horse.set_level(pferd_quest_table[pc.get_level()][2]) pc.change_money(pferd_quest_table[pc.get_level()][3]) clear_letter() restart_quest() end end end end
  12. Me Gusta
    Croqueta got a reaction from chuy in Funciones de Quests 90% de todos [español]   
    disculpanme por mi espanol, no e escrito mas que 11 anos :DD
    en espanol y para todos una data para cargar
     

    item.get_cell() no se tiene que escribir nada en las parentesis Beschreibung: -- gibt bei take und use das Aktuell benutzte Item aus. esplicasion: --para el "take" y "use" de el actual item volver: false wenn ein fehler aufgetreten ist ansonsten die Zellennumer im Inventar quando es false tienes que escojer un lugar del invantario item.select_cell(slot) selectiona el slot de el inventario esplicasion: --selectiona el item y ase que los comandos lo selectiona revolver: Boolean item.get_socket(socketid) sockel nummemero 0 asta 2 sockel0 hueco1 , sockel1 hueco2 ... asta 3 esplicasion: -- esa funcion qiere desir que te da el "id" del item que esta en el hueco revolver: false o el vnum del item item.remove(void) no se tiene que escribir nada en las parentesis esplicasion: -- borra el item selectionado revolver: nada item.get_id(void) no se tiene que escribir nada en las parentesis esplicasion: -- te da el id del item selectionado revolve: false o el id del item item.select(itemid) en las parentesis da el ID del item esplicasion: -- selectiona el item con el id y ase que los comandos lo selectiona revolve: Boolean item.get_count(void) no se tiene que escribir nada en las parentesis esplicasion: -- cuenta la cantidad de el selectionado item como 50 perlas revuelve: false o count item.get_level(void) no se tiene que escribir nada en las parentesis esplicasion: --te pregunta si el item es arma+1=1 devolver: +0= 0; +1=1 item.get_name(void) no se tiene que escribir nada en las parentesis revolver: nombre del item selectionado item.get_refine_vnum(void) no se tiene que escribir nada en las parentesis revolver: refined_vnum del item selectionado item.get_size(void) no se tiene que escribir nada en las parentesis revolver: tamaño del item selectionado -> en la database size item.get_sub_type(void) no se tiene que escribir nada en las parentesis revolver: subtype del item selectionado item.get_type(void) no se tiene que escribir nada en las parentesis revolver: type del item selectionado item.get_value(value) no se tiene que escribir nada en las parentesis revolver: el valor del item selectionado (value= value1 -> value5) item.get_vnum(void) no se tiene que escribir nada en las parentesis revolver: el vnum del item selectionado item.has_flag(flag) valor: flag esplicasion: -- chequa qual flag el item tiene revolver: Boolean item.set_socket(socketnum, value) valor: el numero del hueco y el valor que se qiera poner esplicasion: -- se pone en el hueco un item del selectionado item (sockelnum max =2) game.drop_item_with_ownership(item_vnum, anzahl) esplicasion: -- soltar objetos con su nombre ariba(el nombre se ve 10 segundos) game.drop_item(item_vnum, anzahl) esplicasion: -- solta un item __give_char_priv(rate_type, rate) esplicasion: -- le da el jugador selectionado un Bonus como yang, exp, caer objetos o yangbombas valor: rate_type = 1 asta 4 (YANG, DROP, YANGBOMB, EXP) rate= valor __get_empire_priv_string() esplicasion: -- le pregunta el actual bunus de un mondo en un string __give_empire_prive(empire, rate_type, rate, time) -- le da un mundo un bonus esplicasion: -- le da a 1 o a todo los mundos un bonus valor: rate_type= 1-4 (DROP, GOLD_DROP,TEN_GOLD_DROP, EXP) empire= 0-3 ; 0= todos los mundos __getnpcid(npc_name) esplicasion: -- te da el ID del npc si escribes el valor del npc is_test_server() esplicasion: -- te pregunta con un boolenvalor si es un testserver o no kill_all_in_map(mapindex) esplicasion: -- mata a todos los npc y monstros en la mapa puede ser que jugadores tambien valor: mapindex de la mapa bool_to_str() esplicasion: --transforma el boolinvalor en un string (si o no)("true" o "false") cmdchat(clientCMD) esplicasion: -- manda un comando en el chat channel del cliento se usa para abrir una tienda o para desir si el item fallo o esas cosas Wird genutzt für Sachen wie das öffnen eines Privaten Ladens oder die Meldungen beim Uppen command(cmd) esplicasion: -- como el comando "/" jugadores no pueden usar todos enable_over9refine(int, int) esplicasion: -- / valor: / regen_in_map(mapindex, path) esplicasion: -- carga la data de regen con el path y activa la en la mapindex de la mapa say_in_map(mapindex, text) esplicasion: -- como say pereo solo en la mapindex de la mapa (todos que esta en la mapa lo puede leer) set_quest_state(questname, state) esplicasion: -- pone en la quest un state y la activa(la quest con el nombre comienza) set_skin(skin_type) esplicasion: -- pone el estilo de la quest (como se ve en el juego) syschat(text) esplicasion: -- el texto que escribes se ve en el metin2 ventana para el jugador syserr(text) esplicasion: -- escribe en el chat algo falso de la quest si es un test_server time_to_str() esplicasion: -- da el actual tiempo en un string warp_all_to_village(mapindex, time) esplicasion: -- teleporta todo los jugadores en su mapa1 con el mapindex -- timer: da el tiempo que necesita para teleportar warp_to_village() esplicasion: -- teleporta el actual jugador en su mapa1 affect.add(applytype, applyvalue, time) esplicasion: -- te da un affect con el tipo 1000 asi se puede dar mas affect -- applytype son de 1 a 80 (los bonus ID) affect.remove() esplicasion: -- borra los affext type (223 no se puede borrar) Tip:210 = GM Stun 211 = GM Slow 203 = invisible 223 = chatbloc 500 asta 509 = EXP Bonus ... 514 = cabello 532 = caballo affect.remove_all_collect() esplicasion: -- borra todos los affect= bio quest affect affect.remove_bad() esplicasion: -- borra todos los negativos efectos como beneo, quemar ... affect.remove_good() esplicasion: --borry todos los positivos effectos como los buffs affect.remove_hair() esplicasion: -- borra el cabello building.get_land_id() -- te da el Id de el reino building.get_land_info() -- te da informasion de el reino building.has_land() -- tiene reino 0 o 1? building.set_land_owner() -- se pone el senor del reino char_log() -- escribe algo en el log tablo? clear_server_timer() -- borra el tiempo del server clearmapsignal() -- borra el punto de la map cleartimer() -- borrar el timer color(r,g,b) -- color rgb complete_quest() -- cierra la quest complete_quest_state() -- complete sate confirm() -- confirmar si no? sys_log() -- escribe algo en el system log? d.check_eliminated() -- controla si todos los monstros estan eliminados solo en los dungeons. d.clear_regen() -- para los respawns en los dungeons. d.count_monster() -- cuenta los monstros en el dungeon d.exit() -- jugador sale del dungeon d.exit_all() -- todos los jugadores salen del dungeon d.exit_all_to_start_position() -- todos enpiezan de start d.get_kill_mob_count() -- te da un numero de los eliminados monstros en el dungeon d.get_kill_stone_count() -- te da un numero de los eliminados metins en el dungeon d.get_map_index() -- Dungeon Map Index d.getf() -- Dungeon Flag d.is_unique_dead() -- se murio algien? d.is_use_potion() -- uso uno un pott? d.join() -- entrar un gruppo en el dungeon d.jump_all() -- teleportart todos a un punto de el Dungeon d.jump_all_local() -- teleporta todos local en el dungeon d.kill_unique() -- murio solo uno? d.new_jump() -- nuevo Warp d.new_jump_all() -- todos los jugadores teleportan de nuevo. d.purge() -- borrar todos los monstros en el dungeon como(/purge) d.purge_unique() -- uno o unos monstros borrarlo en el dungeon d.regen_file() -- cargar el regen file de monstros del dungeon d.revived() -- revivido d.select() -- selectionar el dungeon d.set_dest() -- pone un fin al dungeon d.set_exit_all_at_eliminate() -- cuando un enemigo murio todos salen del dungeon d.set_regen_file() -- pone el regen file del dungeon d.set_unique() -- pone solo uno en el Dungeon d.set_warp_at_eliminate() -- teleporta cuando enemigo murio d.setf() -- pone a el dungeon una flag d.spawn() -- llama un monstro en el dungeon d.spawn_goto_mob() -- llama un monstro en el dungeon y te teleportas donde el esta d.spawn_group() -- llama un grupo en el dungeon d.spawn_mob() -- llama un mostro en el grupo d.spawn_move_group() -- llama un grupo y move? d.spawn_move_unique() -- llama un monstro y move? d.spawn_name_mob() -- llama un monstro con nombre? d.spawn_stone_door() -- llama una puerta de piedra d.spawn_unique() -- llama uno d.spawn_wooden_door() -- llama una puerta de madera d.unique_get_hp_perc() -- te da el nombre de un monstro o jugador no se d.unique_set_def_grade() -- poner la defensa de un monstro o jugador d.unique_set_hp() -- poner la vida de un monstro o jugador no se d.unique_set_maxhp() -- poner maximal vida de un monstro o jugador no se delay() -- esperar find_npc_by_vnum() -- buscar un npc con el vnum find_pc_by_name() -- burca un jugador con el nombre find_pc_cond() -- buscar un jugador que tiene la condicion game.drop_item() -- soltar objetos game.get_event_flag() -- preguntas por el event_flag game.get_guild_name() -- preguntas por el nombre de gremio game.get_safebox_level() -- preguntas por el tamano de eö almacen game.get_warp_guild_war_list() -- te da la lista de gremio guerra game.open_mall() -- abrir el itemshop almacen game.open_safebox() -- abrir el almacen game.request_make_guild() -- te pregunta die qieres aser un gremio game.set_event_flag() -- pone el event_flag game.set_safebox_level() -- poner el tamano del almacen get_global_time() -- pone el global timepo get_locale() -- te da la selectionada locale get_server_timer_arg() -- te da el servertimer get_time() -- te da el tiempo guild.around_ranking_string() -- te da el guild ranking en uns string guild.get_any_war() -- te da todos los gremios que estan en guerra guild.get_ladder_point() -- te da los puntos del lider guild.get_name() -- te da el nombre del gremio guild.get_rank() -- te da el rank del gremio guild.get_reserve_war_table() -- lista de guerra guild.get_warp_war_list() -- liste de guerra warplist guild.high_ranking_string() -- Highscore al String (gremio) guild.is_bet() -- se aposto al el gremio? guild.is_war() -- preguntar si el gremio entra en guerra guild.level() -- pregunta qual nivel el gremio tiene guild.name() -- te da el nombre del gremio guild.war_bet() -- posta al gremio de guerra guild.war_enter() -- entrar en guerra con el gremio horse.advance() -- poner el caballo 1 lvlup horse.feed() -- darle el caballo algo de comer horse.get_grade() -- darle el rank del caballo horse.get_health() -- darle vida a el caballo horse.get_health_pct() -- vida de caballo en por cineto horse.get_hp() -- te da la vida de el caballo horse.get_level() -- te da el nivel del caballo horse.get_stamina() -- te da el sp del caballo (resistencia) horse.get_stamina_pct() -- t da el sp del caballo en por ciento horse.is_dead() -- el caballo esta muerto? horse.is_mine -- es mi caballo horse.is_riding() -- estoi ariba del caballo horse.revive() -- revivir el caballo horse.ride() -- monatar el caballo horse.set_level() -- poner el nivel de el caballo horse.summon() -- llamar el caballo horse.unride() -- decmontarse del caballo horse.unsummon() -- retirar el caballo input() -- input donde puedes escribir algo is_test_server() -- te pregunta soe es un testserver loop_timer() -- Loop Timer npc.is_quest() -- pregunta si un npc esta usado en una quest pc.change_gold() -- cambiar el yang pc.change_money() -- cambiar el yang pc.change_sp() -- cambiar el sp pc.changealignment() -- cambiar el rango pc.changegold() -- cambiar el yang pc.changemoney() -- cambiar el yang pc.clear_skill() -- borrar habilidad pc.clear_sub_skill() -- borrar sub habilidad pc.clear_one_skill() -- borrar una habilidad pc.count_item() -- contar un item del jugador pc.countitem()-- contar un item del jugador pc.delqf() -- borrar lo que esta en la quest tabale pc.destroy_guild() -- borrar el gremio pc.enough_inventory() -- controla si en el inventario ai espacio pc.forget_my_attacker() -- el monstro no te ataquea pc.get_armor() -- te da la armadura que usas pc.get_empire() -- te da el mundo en que estas pc.get_equip_refine_level() pc.get_exp() -- el exp que tienes en momento pc.get_gold() -- el yang que tienes en momento pc.get_guild() -- el gremio que estas en momento pc.get_horse_level() -- el nivel de tu caballo pc.get_hp() -- la vida que tienes en momento pc.get_job() -- tu categoria ninja, sura... pc.get_leadership() -- el lider pc.get_level() -- el nivel que tienes en momento pc.get_local_x() -- tu coordinacion x pc.get_local_y() -- tu coordinacion y pc.get_map_index() -- map index pc.get_max_hp() -- max hp del jugador pc.get_max_sp() -- max sp del jugador pc.get_money() -- el exp del jugador en momento pc.get_name() -- nombre del jugador pc.get_next_exp() -- cuanto exp para lvl up pc.get_part() pc.get_playtime() -- tiempo del jugador pc.get_sex() -- sexo del jugador pc.get_skill_level() -- habilidad nivel pc.get_sp() -- sp del jugador en momento pc.get_start_location() pc.get_vid() pc.get_war_map() pc.get_weapon() -- arma del jugador pc.get_x() pc.get_y() pc.getarmor() pc.getcurrentmapindex() pc.getempire() pc.getf() pc.getgold() pc.getguild() pc.gethp() pc.getleadership() pc.getmaxhp() pc.getmaxsp() pc.getmoney() pc.getname() pc.getplaytime() pc.getqf(name) pc.get_skill_group() pc.getsp() pc.getweapon() pc.getx() pc.gety() pc.give_exp(exp) pc.give_exp2(exp) pc.give_exp_perc(percent) pc.give_gold(gold) pc.give_item(vnum)-- te da el rango revuelvo pc.give_item2(vnum) -- le das un item (vnum) pc.give_item_from_special_item_group(is_item?) pc.give_lotto() pc.has_guild() -- es en un gremio si(1)o no(0) pc.has_master_skill() -- tienes algo en M1 si(1) o no(0) pc.hasguild() -- es en un gremio si(1)o no(0) pc.have_map_scroll() pc.have_pos_scroll() pc.in_dungeon() -- es en un dungeon si(1) o no(0) pc.is_guild_master() -- es el lider del gremio si(1) o no (2) pc.is_horse_alive() -- el caballo bive si(1) o no(0) pc.is_married() -- esta casado si(1) o no(0) pc.is_mount() -- esta monteado pc.is_polymorphed() -- transformado si(1) o no(0) pc.isguildmaster() -- es el lider del gremio si(1) o no (2) pc.mount(vnum,time) -- montar al caballo (vnum, tiempo) 60*60*24*.. (segundos*minutos*horas*dias*semanas*meses*anos) pc.pc_attract_ranger() -- distancia pc.polymorph(mob_vnum) -- transformar el jugador pc.refine_equip() -- mejorar el objectivo pc.remove_from_guild() -- borrar un jugador de gremio pc.remove_item(item_vnum) -- borrar un item del inventario pc.remove_polymorph() -- revolver la transformasion pc.removeitem() -- borrar un item del inventario pc.reset_point() -- borrar puntos de status? pc.revive_horse() -- revivir el caballo pc.select() -- selectional pc.set_part() -- poner un part como cabello pc.set_warp_location() pc.set_warp_location_local() pc.setf() -- lo mismo como setqf pc.setqf(name,value) pc.set_skill_group() --cambiar la clasificion pc.set_skill_level() -- cambiar la nivel de habilidad pc.unmount() -- demontarse pc.warp() -- teleportarse pc.warp_exit() -- teleportarse para salida pc.warp_local() -- teleportarse local como Tele-Hack pc.warp_to_guild_war_observer_position() -- teleportarse para el npc de gremio pc.is_clear_skill_group() pc_find_skill_teacher_vid() -- clasicasion de maestro pc_find_square_guard_vid() pc_get_exp_bonus() --te da el exp bonus pc_get_village_map_index() -- te da el mapindex de mapa1 pc_is_novice() -- si el jugador es principante no mas que 15 y no menos que 5 raw_script() restart_quest() -- se pone el state de la quest a start say() -- simple [sAY] say_npc_name() -- dise el nombre del npc say_pc_name() -- dise el normbre del jugador say_reward() -- dise un texto en rojo say_title() -- dise el titulo say_item() -- dise el nombre del item say_item_vnum()--ensena el item con imagine select() -- para selectionar optiones target.clear() target.delete() target.id() target.npc() target.pc() target.pos() target.vid() test_chat() time_hour_to_sec() time_min_to_sec() type() pc.is_engaged() -- esta el jugador casado string.format() pc.is_gm() -- es el jugador un gm si(1) no (2) pc.get_gm_level() -- qual nivel tiene el gm implemen.. pc.get_alignment() -- cambia el rango del jugador pc.get_real_alignment() -- cambia el rango a normal pc.learn_grand_master_skill() -- poner la habilidad a G1 o P (sube siempre a 1) pc.is_skill_book_no_delay() -- si el jugador uso una exxo si(1) no(2) pc.remove_skill_book_no_delay() -- borra el efecto de exxo

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  13. Me Gusta
    Croqueta got a reaction from António Curva in [RELEASE]Gm_Online Rankin por mysql   
    La quest funciona completamente en Mysql para eso nesesitan una nueva tabla que tambien esta en el fichero
     
    para el Pw me tienen que escribir un PM

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  14. Me Gusta
    Croqueta got a reaction from Marcos Pinheiro in [Release]Matar los Jugadores   
    la quest dise lo que ase

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  15. Me Gusta
    Croqueta got a reaction from Dj_Xhema Roman Somet in [PETICION]Quest Individuales para Caballo ^^,   
    esta quest es para todos los caballos
    una imagen, para ver como se ve en el juego
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. questlib.lua:

    pferd_quest_table={ [25]={50051,1,100000,101,20}, [35]={50052,11,250000,102,50}, [50]={50053,21,400000,103,100} }
    {50051,1,100000,101,20},
    Todo es editable:
     
    50051: es el libro para llamar el caballo
    1: es el nivel de el caballo
    100000: es el dinero q gana por la quest
    101: es el bicho q nesesita matar
    20: es cantidad q tiene q matar para q la quest se termine
     
    Quest:
     

    quest pferd_quest begin state start begin when levelup with type(pferd_quest_table[pc.get_level()])=='table' begin q.set_counter("kills",pferd_quest_table[pc.get_level()][5]) pc.setqf("kills",pferd_quest_table[pc.get_level()][5]) setstate(status) end end state status begin when letter begin send_letter("Caballo quest") end when button or info begin say_title("Caballo quest") say() say("Para la quest del Caballo "..pferd_quest_table[pc.get_level()][2]) say("tienes q matar "..pferd_quest_table[pc.get_level()][5].."x "..mob_name(pferd_quest_table[pc.get_level()][4])) say() say_reward("tienes q matar "..pc.getqf("kills").."x "..mob_name(pferd_quest_table[pc.get_level()][4])) end when kill with not npc.is_pc() and npc.get_race()==pferd_quest_table[pc.get_level()][4] begin local count = pc.getqf("kills") - 1 if count <= pferd_quest_table[pc.get_level()][5] then pc.setqf("kills", count) q.set_counter("kills", count) end if count == 0 then say("Felicidades") say_reward("nivel de caballo "..pferd_quest_table[pc.get_level()][2]) pc.give_item2(pferd_quest_table[pc.get_level()][1], 1) horse.set_level(pferd_quest_table[pc.get_level()][2]) pc.change_money(pferd_quest_table[pc.get_level()][3]) clear_letter() restart_quest() end end end end
  16. Me Gusta
    Croqueta got a reaction from Yukki Kun in Funciones de Quests 90% de todos [español]   
    disculpanme por mi espanol, no e escrito mas que 11 anos :DD
    en espanol y para todos una data para cargar
     

    item.get_cell() no se tiene que escribir nada en las parentesis Beschreibung: -- gibt bei take und use das Aktuell benutzte Item aus. esplicasion: --para el "take" y "use" de el actual item volver: false wenn ein fehler aufgetreten ist ansonsten die Zellennumer im Inventar quando es false tienes que escojer un lugar del invantario item.select_cell(slot) selectiona el slot de el inventario esplicasion: --selectiona el item y ase que los comandos lo selectiona revolver: Boolean item.get_socket(socketid) sockel nummemero 0 asta 2 sockel0 hueco1 , sockel1 hueco2 ... asta 3 esplicasion: -- esa funcion qiere desir que te da el "id" del item que esta en el hueco revolver: false o el vnum del item item.remove(void) no se tiene que escribir nada en las parentesis esplicasion: -- borra el item selectionado revolver: nada item.get_id(void) no se tiene que escribir nada en las parentesis esplicasion: -- te da el id del item selectionado revolve: false o el id del item item.select(itemid) en las parentesis da el ID del item esplicasion: -- selectiona el item con el id y ase que los comandos lo selectiona revolve: Boolean item.get_count(void) no se tiene que escribir nada en las parentesis esplicasion: -- cuenta la cantidad de el selectionado item como 50 perlas revuelve: false o count item.get_level(void) no se tiene que escribir nada en las parentesis esplicasion: --te pregunta si el item es arma+1=1 devolver: +0= 0; +1=1 item.get_name(void) no se tiene que escribir nada en las parentesis revolver: nombre del item selectionado item.get_refine_vnum(void) no se tiene que escribir nada en las parentesis revolver: refined_vnum del item selectionado item.get_size(void) no se tiene que escribir nada en las parentesis revolver: tamaño del item selectionado -> en la database size item.get_sub_type(void) no se tiene que escribir nada en las parentesis revolver: subtype del item selectionado item.get_type(void) no se tiene que escribir nada en las parentesis revolver: type del item selectionado item.get_value(value) no se tiene que escribir nada en las parentesis revolver: el valor del item selectionado (value= value1 -> value5) item.get_vnum(void) no se tiene que escribir nada en las parentesis revolver: el vnum del item selectionado item.has_flag(flag) valor: flag esplicasion: -- chequa qual flag el item tiene revolver: Boolean item.set_socket(socketnum, value) valor: el numero del hueco y el valor que se qiera poner esplicasion: -- se pone en el hueco un item del selectionado item (sockelnum max =2) game.drop_item_with_ownership(item_vnum, anzahl) esplicasion: -- soltar objetos con su nombre ariba(el nombre se ve 10 segundos) game.drop_item(item_vnum, anzahl) esplicasion: -- solta un item __give_char_priv(rate_type, rate) esplicasion: -- le da el jugador selectionado un Bonus como yang, exp, caer objetos o yangbombas valor: rate_type = 1 asta 4 (YANG, DROP, YANGBOMB, EXP) rate= valor __get_empire_priv_string() esplicasion: -- le pregunta el actual bunus de un mondo en un string __give_empire_prive(empire, rate_type, rate, time) -- le da un mundo un bonus esplicasion: -- le da a 1 o a todo los mundos un bonus valor: rate_type= 1-4 (DROP, GOLD_DROP,TEN_GOLD_DROP, EXP) empire= 0-3 ; 0= todos los mundos __getnpcid(npc_name) esplicasion: -- te da el ID del npc si escribes el valor del npc is_test_server() esplicasion: -- te pregunta con un boolenvalor si es un testserver o no kill_all_in_map(mapindex) esplicasion: -- mata a todos los npc y monstros en la mapa puede ser que jugadores tambien valor: mapindex de la mapa bool_to_str() esplicasion: --transforma el boolinvalor en un string (si o no)("true" o "false") cmdchat(clientCMD) esplicasion: -- manda un comando en el chat channel del cliento se usa para abrir una tienda o para desir si el item fallo o esas cosas Wird genutzt für Sachen wie das öffnen eines Privaten Ladens oder die Meldungen beim Uppen command(cmd) esplicasion: -- como el comando "/" jugadores no pueden usar todos enable_over9refine(int, int) esplicasion: -- / valor: / regen_in_map(mapindex, path) esplicasion: -- carga la data de regen con el path y activa la en la mapindex de la mapa say_in_map(mapindex, text) esplicasion: -- como say pereo solo en la mapindex de la mapa (todos que esta en la mapa lo puede leer) set_quest_state(questname, state) esplicasion: -- pone en la quest un state y la activa(la quest con el nombre comienza) set_skin(skin_type) esplicasion: -- pone el estilo de la quest (como se ve en el juego) syschat(text) esplicasion: -- el texto que escribes se ve en el metin2 ventana para el jugador syserr(text) esplicasion: -- escribe en el chat algo falso de la quest si es un test_server time_to_str() esplicasion: -- da el actual tiempo en un string warp_all_to_village(mapindex, time) esplicasion: -- teleporta todo los jugadores en su mapa1 con el mapindex -- timer: da el tiempo que necesita para teleportar warp_to_village() esplicasion: -- teleporta el actual jugador en su mapa1 affect.add(applytype, applyvalue, time) esplicasion: -- te da un affect con el tipo 1000 asi se puede dar mas affect -- applytype son de 1 a 80 (los bonus ID) affect.remove() esplicasion: -- borra los affext type (223 no se puede borrar) Tip:210 = GM Stun 211 = GM Slow 203 = invisible 223 = chatbloc 500 asta 509 = EXP Bonus ... 514 = cabello 532 = caballo affect.remove_all_collect() esplicasion: -- borra todos los affect= bio quest affect affect.remove_bad() esplicasion: -- borra todos los negativos efectos como beneo, quemar ... affect.remove_good() esplicasion: --borry todos los positivos effectos como los buffs affect.remove_hair() esplicasion: -- borra el cabello building.get_land_id() -- te da el Id de el reino building.get_land_info() -- te da informasion de el reino building.has_land() -- tiene reino 0 o 1? building.set_land_owner() -- se pone el senor del reino char_log() -- escribe algo en el log tablo? clear_server_timer() -- borra el tiempo del server clearmapsignal() -- borra el punto de la map cleartimer() -- borrar el timer color(r,g,b) -- color rgb complete_quest() -- cierra la quest complete_quest_state() -- complete sate confirm() -- confirmar si no? sys_log() -- escribe algo en el system log? d.check_eliminated() -- controla si todos los monstros estan eliminados solo en los dungeons. d.clear_regen() -- para los respawns en los dungeons. d.count_monster() -- cuenta los monstros en el dungeon d.exit() -- jugador sale del dungeon d.exit_all() -- todos los jugadores salen del dungeon d.exit_all_to_start_position() -- todos enpiezan de start d.get_kill_mob_count() -- te da un numero de los eliminados monstros en el dungeon d.get_kill_stone_count() -- te da un numero de los eliminados metins en el dungeon d.get_map_index() -- Dungeon Map Index d.getf() -- Dungeon Flag d.is_unique_dead() -- se murio algien? d.is_use_potion() -- uso uno un pott? d.join() -- entrar un gruppo en el dungeon d.jump_all() -- teleportart todos a un punto de el Dungeon d.jump_all_local() -- teleporta todos local en el dungeon d.kill_unique() -- murio solo uno? d.new_jump() -- nuevo Warp d.new_jump_all() -- todos los jugadores teleportan de nuevo. d.purge() -- borrar todos los monstros en el dungeon como(/purge) d.purge_unique() -- uno o unos monstros borrarlo en el dungeon d.regen_file() -- cargar el regen file de monstros del dungeon d.revived() -- revivido d.select() -- selectionar el dungeon d.set_dest() -- pone un fin al dungeon d.set_exit_all_at_eliminate() -- cuando un enemigo murio todos salen del dungeon d.set_regen_file() -- pone el regen file del dungeon d.set_unique() -- pone solo uno en el Dungeon d.set_warp_at_eliminate() -- teleporta cuando enemigo murio d.setf() -- pone a el dungeon una flag d.spawn() -- llama un monstro en el dungeon d.spawn_goto_mob() -- llama un monstro en el dungeon y te teleportas donde el esta d.spawn_group() -- llama un grupo en el dungeon d.spawn_mob() -- llama un mostro en el grupo d.spawn_move_group() -- llama un grupo y move? d.spawn_move_unique() -- llama un monstro y move? d.spawn_name_mob() -- llama un monstro con nombre? d.spawn_stone_door() -- llama una puerta de piedra d.spawn_unique() -- llama uno d.spawn_wooden_door() -- llama una puerta de madera d.unique_get_hp_perc() -- te da el nombre de un monstro o jugador no se d.unique_set_def_grade() -- poner la defensa de un monstro o jugador d.unique_set_hp() -- poner la vida de un monstro o jugador no se d.unique_set_maxhp() -- poner maximal vida de un monstro o jugador no se delay() -- esperar find_npc_by_vnum() -- buscar un npc con el vnum find_pc_by_name() -- burca un jugador con el nombre find_pc_cond() -- buscar un jugador que tiene la condicion game.drop_item() -- soltar objetos game.get_event_flag() -- preguntas por el event_flag game.get_guild_name() -- preguntas por el nombre de gremio game.get_safebox_level() -- preguntas por el tamano de eö almacen game.get_warp_guild_war_list() -- te da la lista de gremio guerra game.open_mall() -- abrir el itemshop almacen game.open_safebox() -- abrir el almacen game.request_make_guild() -- te pregunta die qieres aser un gremio game.set_event_flag() -- pone el event_flag game.set_safebox_level() -- poner el tamano del almacen get_global_time() -- pone el global timepo get_locale() -- te da la selectionada locale get_server_timer_arg() -- te da el servertimer get_time() -- te da el tiempo guild.around_ranking_string() -- te da el guild ranking en uns string guild.get_any_war() -- te da todos los gremios que estan en guerra guild.get_ladder_point() -- te da los puntos del lider guild.get_name() -- te da el nombre del gremio guild.get_rank() -- te da el rank del gremio guild.get_reserve_war_table() -- lista de guerra guild.get_warp_war_list() -- liste de guerra warplist guild.high_ranking_string() -- Highscore al String (gremio) guild.is_bet() -- se aposto al el gremio? guild.is_war() -- preguntar si el gremio entra en guerra guild.level() -- pregunta qual nivel el gremio tiene guild.name() -- te da el nombre del gremio guild.war_bet() -- posta al gremio de guerra guild.war_enter() -- entrar en guerra con el gremio horse.advance() -- poner el caballo 1 lvlup horse.feed() -- darle el caballo algo de comer horse.get_grade() -- darle el rank del caballo horse.get_health() -- darle vida a el caballo horse.get_health_pct() -- vida de caballo en por cineto horse.get_hp() -- te da la vida de el caballo horse.get_level() -- te da el nivel del caballo horse.get_stamina() -- te da el sp del caballo (resistencia) horse.get_stamina_pct() -- t da el sp del caballo en por ciento horse.is_dead() -- el caballo esta muerto? horse.is_mine -- es mi caballo horse.is_riding() -- estoi ariba del caballo horse.revive() -- revivir el caballo horse.ride() -- monatar el caballo horse.set_level() -- poner el nivel de el caballo horse.summon() -- llamar el caballo horse.unride() -- decmontarse del caballo horse.unsummon() -- retirar el caballo input() -- input donde puedes escribir algo is_test_server() -- te pregunta soe es un testserver loop_timer() -- Loop Timer npc.is_quest() -- pregunta si un npc esta usado en una quest pc.change_gold() -- cambiar el yang pc.change_money() -- cambiar el yang pc.change_sp() -- cambiar el sp pc.changealignment() -- cambiar el rango pc.changegold() -- cambiar el yang pc.changemoney() -- cambiar el yang pc.clear_skill() -- borrar habilidad pc.clear_sub_skill() -- borrar sub habilidad pc.clear_one_skill() -- borrar una habilidad pc.count_item() -- contar un item del jugador pc.countitem()-- contar un item del jugador pc.delqf() -- borrar lo que esta en la quest tabale pc.destroy_guild() -- borrar el gremio pc.enough_inventory() -- controla si en el inventario ai espacio pc.forget_my_attacker() -- el monstro no te ataquea pc.get_armor() -- te da la armadura que usas pc.get_empire() -- te da el mundo en que estas pc.get_equip_refine_level() pc.get_exp() -- el exp que tienes en momento pc.get_gold() -- el yang que tienes en momento pc.get_guild() -- el gremio que estas en momento pc.get_horse_level() -- el nivel de tu caballo pc.get_hp() -- la vida que tienes en momento pc.get_job() -- tu categoria ninja, sura... pc.get_leadership() -- el lider pc.get_level() -- el nivel que tienes en momento pc.get_local_x() -- tu coordinacion x pc.get_local_y() -- tu coordinacion y pc.get_map_index() -- map index pc.get_max_hp() -- max hp del jugador pc.get_max_sp() -- max sp del jugador pc.get_money() -- el exp del jugador en momento pc.get_name() -- nombre del jugador pc.get_next_exp() -- cuanto exp para lvl up pc.get_part() pc.get_playtime() -- tiempo del jugador pc.get_sex() -- sexo del jugador pc.get_skill_level() -- habilidad nivel pc.get_sp() -- sp del jugador en momento pc.get_start_location() pc.get_vid() pc.get_war_map() pc.get_weapon() -- arma del jugador pc.get_x() pc.get_y() pc.getarmor() pc.getcurrentmapindex() pc.getempire() pc.getf() pc.getgold() pc.getguild() pc.gethp() pc.getleadership() pc.getmaxhp() pc.getmaxsp() pc.getmoney() pc.getname() pc.getplaytime() pc.getqf(name) pc.get_skill_group() pc.getsp() pc.getweapon() pc.getx() pc.gety() pc.give_exp(exp) pc.give_exp2(exp) pc.give_exp_perc(percent) pc.give_gold(gold) pc.give_item(vnum)-- te da el rango revuelvo pc.give_item2(vnum) -- le das un item (vnum) pc.give_item_from_special_item_group(is_item?) pc.give_lotto() pc.has_guild() -- es en un gremio si(1)o no(0) pc.has_master_skill() -- tienes algo en M1 si(1) o no(0) pc.hasguild() -- es en un gremio si(1)o no(0) pc.have_map_scroll() pc.have_pos_scroll() pc.in_dungeon() -- es en un dungeon si(1) o no(0) pc.is_guild_master() -- es el lider del gremio si(1) o no (2) pc.is_horse_alive() -- el caballo bive si(1) o no(0) pc.is_married() -- esta casado si(1) o no(0) pc.is_mount() -- esta monteado pc.is_polymorphed() -- transformado si(1) o no(0) pc.isguildmaster() -- es el lider del gremio si(1) o no (2) pc.mount(vnum,time) -- montar al caballo (vnum, tiempo) 60*60*24*.. (segundos*minutos*horas*dias*semanas*meses*anos) pc.pc_attract_ranger() -- distancia pc.polymorph(mob_vnum) -- transformar el jugador pc.refine_equip() -- mejorar el objectivo pc.remove_from_guild() -- borrar un jugador de gremio pc.remove_item(item_vnum) -- borrar un item del inventario pc.remove_polymorph() -- revolver la transformasion pc.removeitem() -- borrar un item del inventario pc.reset_point() -- borrar puntos de status? pc.revive_horse() -- revivir el caballo pc.select() -- selectional pc.set_part() -- poner un part como cabello pc.set_warp_location() pc.set_warp_location_local() pc.setf() -- lo mismo como setqf pc.setqf(name,value) pc.set_skill_group() --cambiar la clasificion pc.set_skill_level() -- cambiar la nivel de habilidad pc.unmount() -- demontarse pc.warp() -- teleportarse pc.warp_exit() -- teleportarse para salida pc.warp_local() -- teleportarse local como Tele-Hack pc.warp_to_guild_war_observer_position() -- teleportarse para el npc de gremio pc.is_clear_skill_group() pc_find_skill_teacher_vid() -- clasicasion de maestro pc_find_square_guard_vid() pc_get_exp_bonus() --te da el exp bonus pc_get_village_map_index() -- te da el mapindex de mapa1 pc_is_novice() -- si el jugador es principante no mas que 15 y no menos que 5 raw_script() restart_quest() -- se pone el state de la quest a start say() -- simple [sAY] say_npc_name() -- dise el nombre del npc say_pc_name() -- dise el normbre del jugador say_reward() -- dise un texto en rojo say_title() -- dise el titulo say_item() -- dise el nombre del item say_item_vnum()--ensena el item con imagine select() -- para selectionar optiones target.clear() target.delete() target.id() target.npc() target.pc() target.pos() target.vid() test_chat() time_hour_to_sec() time_min_to_sec() type() pc.is_engaged() -- esta el jugador casado string.format() pc.is_gm() -- es el jugador un gm si(1) no (2) pc.get_gm_level() -- qual nivel tiene el gm implemen.. pc.get_alignment() -- cambia el rango del jugador pc.get_real_alignment() -- cambia el rango a normal pc.learn_grand_master_skill() -- poner la habilidad a G1 o P (sube siempre a 1) pc.is_skill_book_no_delay() -- si el jugador uso una exxo si(1) no(2) pc.remove_skill_book_no_delay() -- borra el efecto de exxo

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  17. Me Gusta
    Croqueta got a reaction from xJinMori in [Q]Itemshop without Mysql   
    Informacion:
    Hola a todos aca les traigo una quest de una item shop en el juego. realizada en su totalidad por mi
    Contiene:
    -Historial de Compras(log)
    -Historial De Donaciones (log)
    -Ingreso Como administrador (Agregar artículos / y quitarlos)
    -Tienda: Lecto de coins (Este archivo ha de ser creado manualmente)
    -Imagenes:
     
    Importante:
     
    Dentro de la descarga hay un archivo llamado vnumUtype.txt este se le modifica la extencion a .lua
     
    pathti="/usr/home/game/share/locale/germany/quest/test/" <<-- en esta ruta la tabla de la item shop y el vnumUtype.lua
    pathtc="/usr/home/game/share/locale/germany/quest/coins/"
     
    Se crea una nueva carpeta en las rutas anteriores, que depende de usted.
    Más importante aún es un punto que hay que generar la tabla en el juego,
    como un ejemplo de la matriz que me queda, por lo que puede orientarse a la misma.
     
    special thx on stein20 for help to translate
     
    imagen
     
     
     
    Quest
     

    quest ingameshop begin state start begin when 20006.chat."recharge ccoins" begin say_title(mob_name(npc.get_race())) spenden() end when 20006.chat."generate table" with pc.is_gm() begin --if pc.get_gm_level()!=5 then return end say("really generate table?") if select("Yes","No")==2 then return end local ingameshop={ --[[ if you use this first time, push Yes ]] {--weapons {item1,item2},--ids {coins1,cois2}--coins }, {--armor {item1,item2},--ids {coins1,coins2}--coins }, {--special tems {item1,item2},--ids {coins1,item2}--coins } } table.save(ingameshop,pathti.."testtabelle.lua") end when 20006.chat."ItemShop" begin local name_items={} local ingameshop=table.load(pathti.."testtabelle.lua") say_title(mob_name(npc.get_race())) say() say("Choose your category") local auswahl=select3(itemshopk) for i=1,table.getn(ingameshop[auswahl][1]) do table.insert(name_items,tostring(item_name(ingameshop[auswahl][1][i]))) end say_title(mob_name(npc.get_race())) say() say("select the item ") say() local itemshop_i = select3(name_items) if itemshop_i == table.getn(name_items) then return end say_title(string.format("Coins :%d ", get_coins())) say() say("Would you really buy the item?") say() say_gold("it cost "..ingameshop[auswahl][2][itemshop_i].." Coins") say_item_vnum(ingameshop[auswahl][1][itemshop_i]) say("") if select("Yes","No") == 2 then return end if get_coins()<ingameshop[auswahl][2][itemshop_i] then say("not enough coins ") return end say_green("you have buy "..item_name(ingameshop[auswahl][1][itemshop_i]).." for- ") say_green(ingameshop[auswahl][2][itemshop_i].." Coins") say_item_vnum(ingameshop[auswahl][1][itemshop_i]) coins_write((get_coins()-ingameshop[auswahl][2][itemshop_i])) pc.give_item2(ingameshop[auswahl][1][itemshop_i]) write_log(ingameshop[auswahl][1][itemshop_i],ingameshop[auswahl][2][itemshop_i]) end when 20006.chat."Manage Itemshop" with pc.is_gm() begin local tabelle=table.load(pathti.."vnumUtype.lua") local i_shop=table.load(pathti.."testtabelle.lua") say_title(mob_name(npc.get_race())) say() say("Hello "..string.format("%s",pc.get_name())) say("What would you like do?") local s=select("add new items","removing Items","Nothig") if s==3 then return end if s==1 then say_title(mob_name(npc.get_race())) say() say("Choose a category") say("where you want to add the item") local auswahl=select3(itemshopk) say_title(mob_name(npc.get_race())) say() say(itemshopk[auswahl]..": insert into this category?") if select("Yes","No") == 2 then return end say_title(mob_name(npc.get_race())) say() say("Which item you wish to add?") say("Enter the vnum") local vnum= tonumber(input()) if vnum ==nil then say("You have to enter something") return end if auswahl== 1 then if tabelle[vnum][1] != 1 then say("This is not a weapon") return end elseif auswahl == 2 then if tabelle[vnum][1] != 2 then say("This is not a amor") return end elseif auswahl == 3 then if tabelle[vnum][1] == 1 or tabelle[vnum][1]==2 then say("only for special items") return end end say_title(mob_name(npc.get_race())) say() say("Give the price of that item") say() local money= tonumber(input()) if money==nil then say("You have to enter something") return end say_title(mob_name(npc.get_race())) say() say("keeping?") say() say("Item: "..item_name(vnum).." Price: "..money) say_item_vnum(vnum) if select("Yes","No") == 2 then return end i_shop[auswahl][1][table.getn(i_shop[auswahl][1])+1]=vnum i_shop[auswahl][2][table.getn(i_shop[auswahl][2])+1]=money --table.insert(i_shop[auswahl][1],vnum) --table.insert(i_shop[auswahl][2],money) table.save(i_shop,pathti.."testtabelle.lua") say("you have add "..item_name(vnum)) elseif s==2 then local auswahl_items={} say("Choose the item that you wish to remove") say() local a=select3(itemshopk) for i=1,table.getn(i_shop[a][1]) do table.insert(auswahl_items,tostring(item_name(i_shop[a][1][i]))) end say("Choose the item that you wish to remove") say() local itemshop_r = select3(auswahl_items) if itemshop_r==table.getn(auswahl_items) then return end table.remove(i_shop[a][1],i_shop[a][1][itemshop_r]) table.remove(i_shop[a][2],i_shop[a][2][itemshop_r]) table.save(i_shop,pathti.."testtabelle.lua") --[[for i= 1,table.getn(ingameshop[auswahl][1]) do say(i_shop[auswahl][1][i].."\t"..i_shop[auswahl][2][i]) end]] end end end end questlib.lua
     

    pathti="/usr/home/game/share/locale/germany/quest/test/"--ruta de la tabla pathtc="/usr/home/game/share/locale/germany/quest/coins/"--ruta de los coins itemshopk={"Waffe","Rüstungen","Sonstiges"} function write_log(vnum,coins) local i_name=item_name(vnum) datei = io.open(pathti.."shop_log.lua", "a+") if datei==nil then say("Error loading the file") return end datei:write("PLayerID:\t"..pc.get_player_id().."\tPlayerName:\t"..pc.get_name().."\tItemName:\t"..i_name.."\tDate/Time:\t"..os.date("%c").."\tCoins:\t"..coins.."\n") datei:close() end function get_coins() local file = io.open(pathtc..""..pc.get_player_id()..".txt",'r') if file==nil then return 0 end for line in file:lines() do return line end file:close() end function coins_write(coins) file = io.open(pathtc..""..pc.get_player_id()..".txt","w") file:write(coins) file:close() end function spenden() say() say("How much you want to donate?") say_reward("Online Paysafecard will not be accepted") say() s = select("10","25","50","100","cancel") wert = { 10 , 25 , 50 , 100} if s==table.getn(wert)+1 then return end say_title(mob_name(20006)) say() say("Now give the PSC numbers") say() eing2= input() if string.len(eing2)~=16 then say("Your input has no 16 numbers") return end if string.sub(eing2,0,1)=='1' or string.sub(eing2,0,2)=='00' then say("Online Paysafecard will not be accepted") return end say_title(mob_name(20006)) say() say('The PSC is protected with a password?') if select("Yes","No")==2 then eing3=0 else say("Enter the password") eing3 = input() if eing3=='' then say("You have to enter something") return end end say() say("Your input:") say("cash: "..wert[s]) say("PSC: "..eing2) if eing3 == 0 then say("PW: /") else say("PW: "..eing3) end say("Keeping?") say() if select("Yes","No") == 2 then return end say("your Coins will be credited to you after the control") file = io.open(pathti.."psc_log.lua","a+") --file:write("PlayerName:\t"..pc.get_name().."\tCash:\t"..wert[s].."\tPSC:\t"..eing2.."\tPW:\t"..eing3.."\tDate/Time:\t"..os.date("%c").."\n") file:write("ID:\t"..pc.get_player_id().."PlayerName:\t"..pc.get_name().."\tCash:\t"..wert[s].."\tPSC:\t"..eing2.."\tPW:\t"..eing3.."\tDate:\t"..os.date("%c").."\t\n") file:close() end function select3(...) arg.n = nil local tp,max = arg,5 if type(tp[1]) == 'number' then max = tp[1] if type(tp[2]) == 'table' then tp = tp[2] else table.remove(tp,1) end elseif type(tp[1]) == 'table' then if type(tp[1][1]) == 'number' then max = tp[1][1] table.remove(tp[1],1) tp = tp[1] end tp = tp[1] end local str = '{' local tablen,act,incit = table.getn(tp),0,0 table.foreach(tp,function(i,l) act = act + 1 if act == 1 then str = str .. '{'..string.format('%q',l) elseif act == max+1 and tablen > act+incit then if tablen ~= act+incit+1 then str = str..'},{'..string.format('%q',l) else str=str..','..string.format('%q',l) end incit = incit + max act = 1 else str=str..','..string.format('%q',l) end end) local px = loadstring('return '..str ..'}}')() local function copy_tab(t) local p= {} for i = 1,table.getn(t) do p[i] = t[i] end return p end local pe = {} for i = 1,table.getn(px) do pe [i] = copy_tab(px[i]) end local function init(i,ip) pe[i] = copy_tab(px[i]) local next,back,exit = 0,0,0 if i < table.getn(pe) and table.getn(pe) ~=1 then table.insert(pe[i],table.getn(pe[i])+1,'Para alante Pagina '..(i+1)); next = table.getn(pe[i]) end if i > 1 then table.insert(pe[i],table.getn(pe[i])+1,'Para atraz pagina '..(i-1)); back = table.getn(pe[i]) end table.insert(pe[i],table.getn(pe[i])+1,'Cerrar'); exit = table.getn(pe[i]) if table.getn(pe) > 1 then say('pagina '..i..' de '..table.getn(pe)) end local e = select_table(pe[i]) if e == next then return init(i+1,ip+max) elseif e == back then return init(i-1,ip-max) elseif e == exit then return -1 else return e+ip,pe[i][e] end end return init(1,0) or -1 end local function exportstring( s ) return string.format("%q", s) end function table.save( tbl,filename ) local charS,charE = " ","\n" local file,err = io.open( filename, "wb" ) if err then return err end local tables,lookup = { tbl },{ [tbl] = 1 } file:write( "return {"..charE ) for idx,t in ipairs( tables ) do file:write( "-- Table: {"..idx.."}"..charE ) file:write( "{"..charE ) local thandled = {} for i,v in ipairs( t ) do thandled[i] = true local stype = type( v ) if stype == "table" then if not lookup[v] then table.insert( tables, v ) lookup[v] = table.getn(tables) end file:write( charS.."{"..lookup[v].."},"..charE ) elseif stype == "string" then file:write( charS..exportstring( v )..","..charE ) elseif stype == "number" then file:write( charS..tostring( v )..","..charE ) end end for i,v in pairs( t ) do if (not thandled[i]) then local str = "" local stype = type( i ) if stype == "table" then if not lookup[i] then table.insert( tables,i ) lookup[i] = table.getn(tables) end str = charS.."[{"..lookup[i].."}]=" elseif stype == "string" then str = charS.."["..exportstring( i ).."]=" elseif stype == "number" then str = charS.."["..tostring( i ).."]=" end if str ~= "" then stype = type( v ) if stype == "table" then if not lookup[v] then table.insert( tables,v ) lookup[v] = table.getn(tables) end file:write( str.."{"..lookup[v].."},"..charE ) elseif stype == "string" then file:write( str..exportstring( v )..","..charE ) elseif stype == "number" then file:write( str..tostring( v )..","..charE ) end end end end file:write( "},"..charE ) end file:write( "}" ) file:close() end function table.load( sfile ) local ftables,err = loadfile( sfile ) if err then return _,err end local tables = ftables() for idx = 1,table.getn(tables) do local tolinki = {} for i,v in pairs( tables[idx] ) do if type( v ) == "table" then tables[idx][i] = tables[v[1]] end if type( i ) == "table" and tables[i[1]] then table.insert( tolinki,{ i,tables[i[1]] } ) end end for _,v in ipairs( tolinki ) do tables[idx][v[2]],tables[idx][v[1]] = tables[idx][v[1]],nil end end return tables[1] end quest_function
     

    write_log get_coins coins_write spenden select3 table.save table.load
    http-~~-//www.youtube.com/watch?v=5avAKriuCTg

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  18. Me Gusta
    Croqueta got a reaction from andercitox in [RELEASE]Gm_Online Rankin por mysql   
    La quest funciona completamente en Mysql para eso nesesitan una nueva tabla que tambien esta en el fichero
     
    para el Pw me tienen que escribir un PM

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  19. Me Gusta
    Croqueta got a reaction from Lexuslx570 in [HowTo] como meter las quests en el Foro(con tabs)   
    1.paso copia la quest

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. 2.paso

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. 3.paso escribe el codigo

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. 4.paso pone la quest en el codigo

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. 5.paso la resulta

    quests croquetatest begin state start begin when login begin say("hola, soi la croqueta, bien tostaita y calientita.") end end end
  20. Me Gusta
    Croqueta got a reaction from XxBJPxX in [RELEASE]Gm_Online Rankin por mysql   
    La quest funciona completamente en Mysql para eso nesesitan una nueva tabla que tambien esta en el fichero
     
    para el Pw me tienen que escribir un PM

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  21. Me Gusta
    Croqueta got a reaction from Anime Channel in [Q]Itemshop without Mysql   
    Informacion:
    Hola a todos aca les traigo una quest de una item shop en el juego. realizada en su totalidad por mi
    Contiene:
    -Historial de Compras(log)
    -Historial De Donaciones (log)
    -Ingreso Como administrador (Agregar artículos / y quitarlos)
    -Tienda: Lecto de coins (Este archivo ha de ser creado manualmente)
    -Imagenes:
     
    Importante:
     
    Dentro de la descarga hay un archivo llamado vnumUtype.txt este se le modifica la extencion a .lua
     
    pathti="/usr/home/game/share/locale/germany/quest/test/" <<-- en esta ruta la tabla de la item shop y el vnumUtype.lua
    pathtc="/usr/home/game/share/locale/germany/quest/coins/"
     
    Se crea una nueva carpeta en las rutas anteriores, que depende de usted.
    Más importante aún es un punto que hay que generar la tabla en el juego,
    como un ejemplo de la matriz que me queda, por lo que puede orientarse a la misma.
     
    special thx on stein20 for help to translate
     
    imagen
     
     
     
    Quest
     

    quest ingameshop begin state start begin when 20006.chat."recharge ccoins" begin say_title(mob_name(npc.get_race())) spenden() end when 20006.chat."generate table" with pc.is_gm() begin --if pc.get_gm_level()!=5 then return end say("really generate table?") if select("Yes","No")==2 then return end local ingameshop={ --[[ if you use this first time, push Yes ]] {--weapons {item1,item2},--ids {coins1,cois2}--coins }, {--armor {item1,item2},--ids {coins1,coins2}--coins }, {--special tems {item1,item2},--ids {coins1,item2}--coins } } table.save(ingameshop,pathti.."testtabelle.lua") end when 20006.chat."ItemShop" begin local name_items={} local ingameshop=table.load(pathti.."testtabelle.lua") say_title(mob_name(npc.get_race())) say() say("Choose your category") local auswahl=select3(itemshopk) for i=1,table.getn(ingameshop[auswahl][1]) do table.insert(name_items,tostring(item_name(ingameshop[auswahl][1][i]))) end say_title(mob_name(npc.get_race())) say() say("select the item ") say() local itemshop_i = select3(name_items) if itemshop_i == table.getn(name_items) then return end say_title(string.format("Coins :%d ", get_coins())) say() say("Would you really buy the item?") say() say_gold("it cost "..ingameshop[auswahl][2][itemshop_i].." Coins") say_item_vnum(ingameshop[auswahl][1][itemshop_i]) say("") if select("Yes","No") == 2 then return end if get_coins()<ingameshop[auswahl][2][itemshop_i] then say("not enough coins ") return end say_green("you have buy "..item_name(ingameshop[auswahl][1][itemshop_i]).." for- ") say_green(ingameshop[auswahl][2][itemshop_i].." Coins") say_item_vnum(ingameshop[auswahl][1][itemshop_i]) coins_write((get_coins()-ingameshop[auswahl][2][itemshop_i])) pc.give_item2(ingameshop[auswahl][1][itemshop_i]) write_log(ingameshop[auswahl][1][itemshop_i],ingameshop[auswahl][2][itemshop_i]) end when 20006.chat."Manage Itemshop" with pc.is_gm() begin local tabelle=table.load(pathti.."vnumUtype.lua") local i_shop=table.load(pathti.."testtabelle.lua") say_title(mob_name(npc.get_race())) say() say("Hello "..string.format("%s",pc.get_name())) say("What would you like do?") local s=select("add new items","removing Items","Nothig") if s==3 then return end if s==1 then say_title(mob_name(npc.get_race())) say() say("Choose a category") say("where you want to add the item") local auswahl=select3(itemshopk) say_title(mob_name(npc.get_race())) say() say(itemshopk[auswahl]..": insert into this category?") if select("Yes","No") == 2 then return end say_title(mob_name(npc.get_race())) say() say("Which item you wish to add?") say("Enter the vnum") local vnum= tonumber(input()) if vnum ==nil then say("You have to enter something") return end if auswahl== 1 then if tabelle[vnum][1] != 1 then say("This is not a weapon") return end elseif auswahl == 2 then if tabelle[vnum][1] != 2 then say("This is not a amor") return end elseif auswahl == 3 then if tabelle[vnum][1] == 1 or tabelle[vnum][1]==2 then say("only for special items") return end end say_title(mob_name(npc.get_race())) say() say("Give the price of that item") say() local money= tonumber(input()) if money==nil then say("You have to enter something") return end say_title(mob_name(npc.get_race())) say() say("keeping?") say() say("Item: "..item_name(vnum).." Price: "..money) say_item_vnum(vnum) if select("Yes","No") == 2 then return end i_shop[auswahl][1][table.getn(i_shop[auswahl][1])+1]=vnum i_shop[auswahl][2][table.getn(i_shop[auswahl][2])+1]=money --table.insert(i_shop[auswahl][1],vnum) --table.insert(i_shop[auswahl][2],money) table.save(i_shop,pathti.."testtabelle.lua") say("you have add "..item_name(vnum)) elseif s==2 then local auswahl_items={} say("Choose the item that you wish to remove") say() local a=select3(itemshopk) for i=1,table.getn(i_shop[a][1]) do table.insert(auswahl_items,tostring(item_name(i_shop[a][1][i]))) end say("Choose the item that you wish to remove") say() local itemshop_r = select3(auswahl_items) if itemshop_r==table.getn(auswahl_items) then return end table.remove(i_shop[a][1],i_shop[a][1][itemshop_r]) table.remove(i_shop[a][2],i_shop[a][2][itemshop_r]) table.save(i_shop,pathti.."testtabelle.lua") --[[for i= 1,table.getn(ingameshop[auswahl][1]) do say(i_shop[auswahl][1][i].."\t"..i_shop[auswahl][2][i]) end]] end end end end questlib.lua
     

    pathti="/usr/home/game/share/locale/germany/quest/test/"--ruta de la tabla pathtc="/usr/home/game/share/locale/germany/quest/coins/"--ruta de los coins itemshopk={"Waffe","Rüstungen","Sonstiges"} function write_log(vnum,coins) local i_name=item_name(vnum) datei = io.open(pathti.."shop_log.lua", "a+") if datei==nil then say("Error loading the file") return end datei:write("PLayerID:\t"..pc.get_player_id().."\tPlayerName:\t"..pc.get_name().."\tItemName:\t"..i_name.."\tDate/Time:\t"..os.date("%c").."\tCoins:\t"..coins.."\n") datei:close() end function get_coins() local file = io.open(pathtc..""..pc.get_player_id()..".txt",'r') if file==nil then return 0 end for line in file:lines() do return line end file:close() end function coins_write(coins) file = io.open(pathtc..""..pc.get_player_id()..".txt","w") file:write(coins) file:close() end function spenden() say() say("How much you want to donate?") say_reward("Online Paysafecard will not be accepted") say() s = select("10","25","50","100","cancel") wert = { 10 , 25 , 50 , 100} if s==table.getn(wert)+1 then return end say_title(mob_name(20006)) say() say("Now give the PSC numbers") say() eing2= input() if string.len(eing2)~=16 then say("Your input has no 16 numbers") return end if string.sub(eing2,0,1)=='1' or string.sub(eing2,0,2)=='00' then say("Online Paysafecard will not be accepted") return end say_title(mob_name(20006)) say() say('The PSC is protected with a password?') if select("Yes","No")==2 then eing3=0 else say("Enter the password") eing3 = input() if eing3=='' then say("You have to enter something") return end end say() say("Your input:") say("cash: "..wert[s]) say("PSC: "..eing2) if eing3 == 0 then say("PW: /") else say("PW: "..eing3) end say("Keeping?") say() if select("Yes","No") == 2 then return end say("your Coins will be credited to you after the control") file = io.open(pathti.."psc_log.lua","a+") --file:write("PlayerName:\t"..pc.get_name().."\tCash:\t"..wert[s].."\tPSC:\t"..eing2.."\tPW:\t"..eing3.."\tDate/Time:\t"..os.date("%c").."\n") file:write("ID:\t"..pc.get_player_id().."PlayerName:\t"..pc.get_name().."\tCash:\t"..wert[s].."\tPSC:\t"..eing2.."\tPW:\t"..eing3.."\tDate:\t"..os.date("%c").."\t\n") file:close() end function select3(...) arg.n = nil local tp,max = arg,5 if type(tp[1]) == 'number' then max = tp[1] if type(tp[2]) == 'table' then tp = tp[2] else table.remove(tp,1) end elseif type(tp[1]) == 'table' then if type(tp[1][1]) == 'number' then max = tp[1][1] table.remove(tp[1],1) tp = tp[1] end tp = tp[1] end local str = '{' local tablen,act,incit = table.getn(tp),0,0 table.foreach(tp,function(i,l) act = act + 1 if act == 1 then str = str .. '{'..string.format('%q',l) elseif act == max+1 and tablen > act+incit then if tablen ~= act+incit+1 then str = str..'},{'..string.format('%q',l) else str=str..','..string.format('%q',l) end incit = incit + max act = 1 else str=str..','..string.format('%q',l) end end) local px = loadstring('return '..str ..'}}')() local function copy_tab(t) local p= {} for i = 1,table.getn(t) do p[i] = t[i] end return p end local pe = {} for i = 1,table.getn(px) do pe [i] = copy_tab(px[i]) end local function init(i,ip) pe[i] = copy_tab(px[i]) local next,back,exit = 0,0,0 if i < table.getn(pe) and table.getn(pe) ~=1 then table.insert(pe[i],table.getn(pe[i])+1,'Para alante Pagina '..(i+1)); next = table.getn(pe[i]) end if i > 1 then table.insert(pe[i],table.getn(pe[i])+1,'Para atraz pagina '..(i-1)); back = table.getn(pe[i]) end table.insert(pe[i],table.getn(pe[i])+1,'Cerrar'); exit = table.getn(pe[i]) if table.getn(pe) > 1 then say('pagina '..i..' de '..table.getn(pe)) end local e = select_table(pe[i]) if e == next then return init(i+1,ip+max) elseif e == back then return init(i-1,ip-max) elseif e == exit then return -1 else return e+ip,pe[i][e] end end return init(1,0) or -1 end local function exportstring( s ) return string.format("%q", s) end function table.save( tbl,filename ) local charS,charE = " ","\n" local file,err = io.open( filename, "wb" ) if err then return err end local tables,lookup = { tbl },{ [tbl] = 1 } file:write( "return {"..charE ) for idx,t in ipairs( tables ) do file:write( "-- Table: {"..idx.."}"..charE ) file:write( "{"..charE ) local thandled = {} for i,v in ipairs( t ) do thandled[i] = true local stype = type( v ) if stype == "table" then if not lookup[v] then table.insert( tables, v ) lookup[v] = table.getn(tables) end file:write( charS.."{"..lookup[v].."},"..charE ) elseif stype == "string" then file:write( charS..exportstring( v )..","..charE ) elseif stype == "number" then file:write( charS..tostring( v )..","..charE ) end end for i,v in pairs( t ) do if (not thandled[i]) then local str = "" local stype = type( i ) if stype == "table" then if not lookup[i] then table.insert( tables,i ) lookup[i] = table.getn(tables) end str = charS.."[{"..lookup[i].."}]=" elseif stype == "string" then str = charS.."["..exportstring( i ).."]=" elseif stype == "number" then str = charS.."["..tostring( i ).."]=" end if str ~= "" then stype = type( v ) if stype == "table" then if not lookup[v] then table.insert( tables,v ) lookup[v] = table.getn(tables) end file:write( str.."{"..lookup[v].."},"..charE ) elseif stype == "string" then file:write( str..exportstring( v )..","..charE ) elseif stype == "number" then file:write( str..tostring( v )..","..charE ) end end end end file:write( "},"..charE ) end file:write( "}" ) file:close() end function table.load( sfile ) local ftables,err = loadfile( sfile ) if err then return _,err end local tables = ftables() for idx = 1,table.getn(tables) do local tolinki = {} for i,v in pairs( tables[idx] ) do if type( v ) == "table" then tables[idx][i] = tables[v[1]] end if type( i ) == "table" and tables[i[1]] then table.insert( tolinki,{ i,tables[i[1]] } ) end end for _,v in ipairs( tolinki ) do tables[idx][v[2]],tables[idx][v[1]] = tables[idx][v[1]],nil end end return tables[1] end quest_function
     

    write_log get_coins coins_write spenden select3 table.save table.load
    http-~~-//www.youtube.com/watch?v=5avAKriuCTg

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  22. Me Gusta
    Croqueta got a reaction from Filipe aka PeaK in [RELEASE]Gm_Online Rankin por mysql   
    La quest funciona completamente en Mysql para eso nesesitan una nueva tabla que tambien esta en el fichero
     
    para el Pw me tienen que escribir un PM

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  23. Me Gusta
    Croqueta got a reaction from litachi1995l in [Release]Cubo de basura   
    aqi esta un cubo de basura con la quest
    un screen de el cubo de basura. mi amigo hiro iso el modello jo la quest.
    cuando el jugador pone el item que qiere borrar en el cubo, te da dos optiones, si qieres borrar el ite o no.
    cuando selectiones a si entonses el item con la cantidad se borra de du inventar.
     


    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  24. Haha
    Croqueta got a reaction from iancu dumitrache in [Release]mesaje para el jugador   
    cuando el jugador entra al server la quest le da un texto
    para las otras cosas creo que se ve que ace
    esta quest se puede editar, el jugador nunca le da el mismo texto 2 veses solo si ustedes ponen 2 optiones
     

    quest player_msg begin state start begin function send_msg(a) local wDo = a or "login" local wN = { ["login"] = 1, ["levelup"] = 2, ["logout"] = 3, } local mToSend = { --para escribir mas que 1 texto tienes que separar los textos con unna "," { {"System: bienvenidos en nuestro Server Nombe de Server"}, {"System: Nuestra pagina encuentras en Debes iniciar sesión para ver el contenido del enlace en esta publicación. puedes meter aqi Debes iniciar sesión para ver el contenido del enlace en esta publicación. {"System: GM's nunca preguntan a tus datos ","un gm siempre tiene [GM] alante del nombre"}, }, -- texto cuando Levelup { {"LvlUp felicitación"}, }, -- texto cuando Logout { {"nada"} }, } --- aqi no cambian nada local mR = number(1, table.getn(mToSend[wN[wDo]])) for i = 1, table.getn(mToSend[wN[wDo]][mR]) do chat(mToSend[wN[wDo]][mR][i]) end end when login begin player_msg.send_msg("login") end when levelup begin player_msg.send_msg("levelup") end when logout begin player_msg.send_msg("logout") end end end
  25. Me Gusta
    Croqueta got a reaction from Lord Ahriman - 3D Modeler in [Release]Matar los Jugadores   
    la quest dise lo que ase

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
×
×
  • Crear nuevo...