ayuda scripters a depurar este codigo - viajes en el mar

    Comparte
    avatar
    Rafalongo
    Modder
    Modder

    Mensajes : 471
    Edad : 27
    Facción : Reino de Swadia

    ayuda scripters a depurar este codigo - viajes en el mar

    Mensaje por Rafalongo el Vie Jun 19, 2015 9:56 pm

    bueno, lo que intento hacer es simplemente que el jugador y las otras parties se conviertan en abrcos al ingresar en el terreno de agua, especificamente el denominada por el juego "bridge", un tipo de terreno de agua por el cual el jugador puede caminar, y que hay que poner en poquitas cantidades (angostas sendas) ya que sino te crashea el juego, ni idea de porque

    tras muchas pruebas y error este codigo (que va al final de module_triggers, pero antes del ultimo simbolo ] que aparece solo) fue lo mejor que pude conseguir:

    Código:
    ##diplomacy chief end
    ###SEA BATTLES chief
    (0.5, 0, 0, [(neq, "$g_player_icon_state", pis_ship),
                (neq, "$g_player_is_captive", 1),
                 (party_get_current_terrain,":terrain","p_main_party"),
        (assign,reg1,":terrain"),
    ], # rt_steppe is an example for the name of your new water terrain
       [(try_begin),
           (troop_get_inventory_slot, ":cur_horse", "trp_player", 8), #horse slot
        (assign, ":new_icon", -1),
        (try_begin),
          (eq,reg1,7), #terreno
          (assign, ":new_icon", "icon_ship"),
               (store_troop_gold,":money","trp_player"),
          (try_begin),
            (gt,":money",9),
           (troop_remove_gold, "trp_player", 10),
         (display_message,"@You hire a boat for the trip."),
            (display_message,"@Your men are concerned about the ocean."),
          (call_script, "script_change_player_party_morale", -1),
        (else_try),
            (display_message,"@You do not have money, but forced some fishermen to take their boats."),
            (call_script, "script_change_player_honor", -1),
            (display_message,"@Your men are concerned about the ocean."),
          (call_script, "script_change_player_party_morale", -1),
          (try_end),
         (display_message,"@water"),
         (else_try),
          (eq, "$g_player_icon_state", pis_normal),
          (try_begin),
            (ge, ":cur_horse", 0),
            (assign, ":new_icon", "icon_player_horseman"),
            (display_message,"@Back on the ground. Gone are the dizzy, rocking and sea monsters. Your men seem more relaxed."),
          (call_script, "script_change_player_party_morale", 5),
          (else_try),
            (assign, ":new_icon", "icon_player"),
            (display_message,"@Back on the ground. Gone are the dizzy, rocking and sea monsters. Your men seem more relaxed."),
          (call_script, "script_change_player_party_morale", 5),
          (try_end),
        (else_try),
          (eq, "$g_player_icon_state", pis_camping), # All of this is thanks to Lumos bein' generous, and not being as much of a lazy arse as I am
          (assign, ":new_icon", "icon_camp"),
        (try_end),
        (party_set_icon,"p_main_party", ":new_icon"),
    ]),

    #esta sobre oceano despues de batalla
    ##  #SEA BATTLES chief
    (0.1, 0, 0, [
       (neq, "$g_player_icon_state", pis_ship),
                 (party_get_current_terrain,":terrain","p_main_party"),
        (assign,reg1,":terrain"),
                (neq, "$g_player_is_captive", 1),
    ], # rt_steppe is an example for the name of your new water terrain
       [(try_begin),
           (troop_get_inventory_slot, ":cur_horse", "trp_player", 8), #horse slot
        (assign, ":new_icon", -1),
        (try_begin),
    (neq,reg1,7), #terreno
    (this_or_next|eq,reg1,0), #terreno
    (eq,reg1,8), #terreno
          (assign, ":new_icon", "icon_ship"),
         (else_try),
          (eq, "$g_player_icon_state", pis_normal),
          (try_begin),
            (ge, ":cur_horse", 0),
            (assign, ":new_icon", "icon_player_horseman"),
          (else_try),
            (assign, ":new_icon", "icon_player"),
          (try_end),
        (else_try),
          (eq, "$g_player_icon_state", pis_camping), # All of this is thanks to Lumos bein' generous, and not being as much of a lazy arse as I am
          (assign, ":new_icon", "icon_camp"),
        (try_end),
        (party_set_icon,"p_main_party", ":new_icon"),
    ]),
     

     
     (0.1, 0, 0.0, [],
    [(try_for_parties, ":cur_party"),
       (party_get_current_terrain, ":terrain", ":cur_party"),
       (eq, ":terrain", 7),
      (party_get_template_id, ":cur_template", ":cur_party"),
     (this_or_next|eq, ":cur_template", "pt_kingdom_hero_party"),
     (this_or_next|eq, ":cur_template", "pt_kingdom_caravan_party"),
     (this_or_next|eq, ":cur_template", "pt_manhunters"),
     (this_or_next|eq, ":cur_template", "pt_village_farmers"),
     (this_or_next|eq, ":cur_template", "pt_deserters"),
     (this_or_next|eq, ":cur_template", "pt_looters"),
     (this_or_next|eq, ":cur_template", "pt_forest_bandits"),
     (this_or_next|eq, ":cur_template", "pt_steppe_bandits"),
     (this_or_next|eq, ":cur_template", "pt_mountain_bandits"),
     (eq, ":cur_template", "pt_sea_raiders"),
       (party_set_icon, ":cur_party", "icon_ship"),
     (else_try),
       (neq,":terrain",7),
       (party_get_template_id, ":cur_template", ":cur_party"),
       (eq, ":cur_template", "pt_kingdom_hero_party"),
     (party_set_icon,":cur_party","icon_flagbearer_a"),
     (else_try),
     (eq, ":cur_template", "pt_kingdom_caravan_party"),
     (party_set_icon,":cur_party","icon_mule"),
     (else_try),
     (eq, ":cur_template", "pt_deserters"),
     (party_set_icon,":cur_party","icon_vaegir_knight"),
     (else_try),
     (eq, ":cur_template", "pt_manhunters"),
     (party_set_icon,":cur_party","icon_gray_knight"),
     (else_try),
      (eq, ":cur_template", "pt_village_farmers"),
     (party_set_icon,":cur_party","icon_peasant"),
     (else_try),
      (this_or_next|eq, ":cur_template", "pt_looters"),
     (this_or_next|eq, ":cur_template", "pt_forest_bandits"),
     (this_or_next|eq, ":cur_template", "pt_steppe_bandits"),
     (this_or_next|eq, ":cur_template", "pt_mountain_bandits"),
     (eq, ":cur_template", "pt_sea_raiders"),
     (party_set_icon,":cur_party","icon_axeman"),
     (else_try),
     (eq, ":cur_template", "pt_cattle_herd"),
     (party_set_icon,":cur_party","icon_cattle"),
     (try_end),]),

    ###cambio parties navales
         (0.1, 0, 0.0, [],
    [(try_for_parties, ":cur_party"),
       (party_get_current_terrain, ":terrain", ":cur_party"),
       (this_or_next|eq,":terrain",2), #terreno
       (this_or_next|eq,":terrain",3), #terreno
       (eq,":terrain",4), #terreno
       (party_get_template_id, ":cur_template", ":cur_party"),
     (party_set_icon,":cur_party","icon_axeman"),
     (else_try),
       (this_or_next|neq,":terrain",2), #terreno
       (this_or_next|neq,":terrain",3), #terreno
       (neq,":terrain",4), #terreno
       (party_get_template_id, ":cur_template", ":cur_party"),
     (party_set_icon,":cur_party","icon_ship"),
     (try_end),]),

    el codigo original lo saque de aquí: [Tienes que estar registrado y conectado para ver este vínculo]
    pero luego le meti partes del codigo de brytenwalda, ya que con el codigo original todas las parties se convierten en abrcos al ingresar en el terreno "bridge" tambien conocido como"ford" que usa el numero "7"
    menos el personaje! la party del personaje no se convertia, y metiendole el codigo del brytenwalda si funciono lo unico que conserve del primer codigo del foro que les puse ahi es esta parte:

    Código:
    (0.1, 0, 0.0, [],
    [(try_for_parties, ":cur_party"),
       (party_get_current_terrain, ":terrain", ":cur_party"),
       (eq, ":terrain", 7),
      (party_get_template_id, ":cur_template", ":cur_party"),
     (this_or_next|eq, ":cur_template", "pt_kingdom_hero_party"),
     (this_or_next|eq, ":cur_template", "pt_kingdom_caravan_party"),
     (this_or_next|eq, ":cur_template", "pt_manhunters"),
     (this_or_next|eq, ":cur_template", "pt_village_farmers"),
     (this_or_next|eq, ":cur_template", "pt_deserters"),
     (this_or_next|eq, ":cur_template", "pt_looters"),
     (this_or_next|eq, ":cur_template", "pt_forest_bandits"),
     (this_or_next|eq, ":cur_template", "pt_steppe_bandits"),
     (this_or_next|eq, ":cur_template", "pt_mountain_bandits"),
     (eq, ":cur_template", "pt_sea_raiders"),
       (party_set_icon, ":cur_party", "icon_ship"),
     (else_try),
       (neq,":terrain",7),
       (party_get_template_id, ":cur_template", ":cur_party"),
       (eq, ":cur_template", "pt_kingdom_hero_party"),
     (party_set_icon,":cur_party","icon_flagbearer_a"),
     (else_try),
     (eq, ":cur_template", "pt_kingdom_caravan_party"),
     (party_set_icon,":cur_party","icon_mule"),
     (else_try),
     (eq, ":cur_template", "pt_deserters"),
     (party_set_icon,":cur_party","icon_vaegir_knight"),
     (else_try),
     (eq, ":cur_template", "pt_manhunters"),
     (party_set_icon,":cur_party","icon_gray_knight"),
     (else_try),
      (eq, ":cur_template", "pt_village_farmers"),
     (party_set_icon,":cur_party","icon_peasant"),
     (else_try),
      (this_or_next|eq, ":cur_template", "pt_looters"),
     (this_or_next|eq, ":cur_template", "pt_forest_bandits"),
     (this_or_next|eq, ":cur_template", "pt_steppe_bandits"),
     (this_or_next|eq, ":cur_template", "pt_mountain_bandits"),
     (eq, ":cur_template", "pt_sea_raiders"),
     (party_set_icon,":cur_party","icon_axeman"),
     (else_try),
     (eq, ":cur_template", "pt_cattle_herd"),
     (party_set_icon,":cur_party","icon_cattle"),
     (try_end),]),

    ya que en la del brytenwalda estaba hecha para las partys de ese mod justamente, que son otras diferentes al native.

    Los problemas que tengo ahora son:

    1- que cuando uno esta en la tierra aparece constantemente el mensaje de que mis tropas se sienten bien por estar en tierra firme, eso solo deberia aparecer una vez al salir del mar.

    2- cuando estoy en tierra mi personaje esta constantemente cambiando del icono a caballo (q es el correcto por mi pj esta montado) al icono del "axeman" que aparece cuando uno no esta montado . tbn incluso por un momento se convirtio en barco estan en tierra..

    Estaria bueno poder dejar este codigo a punto y de paso seria una buena contribucion para este subforo!el subforo de guias! ya que no encontre nada respecto a este tema tan necesario para mods con islas en ningun foro en español, y pocos temas en ingles (y eso que muchisimos mods lo usan)

      Fecha y hora actual: Vie Nov 24, 2017 1:47 am