Project1

标题: 标签跳转怎么用脚本操作 [打印本页]

作者: domodomodomo    时间: 2013-12-30 13:47
标题: 标签跳转怎么用脚本操作
例如事件中有一个叫“一”的标签,用脚本怎么跳转
作者: batfjtn    时间: 2013-12-30 14:03
本帖最后由 batfjtn 于 2013-12-30 14:24 编辑

直接输入名字就可以了啊~~!!

标签是def XXXX

如果哪里需要跳了你就直接输入XXXX就可以了~~!!

例子~~!!
  1.   #--------------------------------------------------------------------------
  2.   # ● 刷新角色
  3.   #--------------------------------------------------------------------------
  4.   def update_actor
  5.     refresh(0) if @x != $game_player.x
  6.     refresh(1) if @y != $game_player.y
  7.     refresh(2) if [url=home.php?mod=space&uid=188055]@d[/url] != $game_player.direction
  8.     update_actor_attk if move? #跳转到 def update_actor_attk
  9.     update_actor_skill if move? and skill? #跳转到 def update_actor_skill
  10.     update_actor_item #跳转到 def update_actor_item
  11.     update_bullet if @bullets.size > 0 #跳转到 def update_bullet
  12.   end
  13.   #--------------------------------------------------------------------------
  14.   # ● 刷按下物品键时
  15.   #--------------------------------------------------------------------------
  16.   def update_actor_item
  17.     Item_KEYS.each {|key,k|
  18.     if Kboard.trigger?(k)
  19.       item = $data_items[@actor.item_key[key]]
  20.       return if item.nil?
  21.       item_effect(item)
  22.     end
  23.     }
  24.     def item_effect(item)
  25.       damage = @actor.item_effect(item)
  26.       $game_player.animation_id = item.animation2_id
  27.       $game_system.se_play(item.menu_se)
  28.       $game_party.lose_item(item.id,1)
  29.       $refresh["item"] = true
  30.     end
  31.   end
  32.   #--------------------------------------------------------------------------
  33.   # ● 刷新按下技能键时
  34.   #--------------------------------------------------------------------------
  35.   def update_actor_skill
  36.     if @actor_atktime <= 0
  37.       SKILL_KEYS.each {|key, k|
  38.       if Kboard.trigger?(k)
  39.         skill = $game_skills[@actor.key[key]]
  40.         return if skill.nil?
  41.         if skill.scope == 2
  42.           rangs = ARPG_Rangs.new($game_player, skill.rang).rangs
  43.           damage_skill(@actor, skill, rangs, skill.dop?)
  44.         elsif skill.scope == 1 or skill.scope == 3
  45.           damage_skill(@actor, skill)
  46.         end
  47.       end
  48.       }
  49.     end
  50.   end
  51.   #--------------------------------------------------------------------------
  52.   # ● 刷新角色普通攻击行为
  53.   #--------------------------------------------------------------------------
  54.   def update_actor_attk(d = false)
  55.     # C按下时
  56.     if ((Kboard.trigger?($R_Key_SPACE) or Kboard.trigger?($R_Key_RETURN)) or S[1])and @actor_atktime <= 0
  57.       if $data_weapons[@actor.weapon_id].element_set.include?(21)
  58.         new_x = @x + ([url=home.php?mod=space&uid=188055]@d[/url] == 6 ? 1 : [url=home.php?mod=space&uid=188055]@d[/url] == 4 ? -1 : 0)
  59.         new_y = @y + (@d == 2 ? 1 : @d == 8 ? -1 : 0)
  60.         event = $game_map.events[$game_map.check_event(new_x,new_y)]
  61.         return if !event.nil? and !event.is_enemy?
  62.         rang_atk
  63.         return
  64.       end
  65.       new_x = @x + (@d == 6 ? 1 : @d == 4 ? -1 : 0)
  66.       new_y = @y + (@d == 2 ? 1 : @d == 8 ? -1 : 0)
  67.       event = $game_map.events[$game_map.check_event(new_x,new_y)]
  68.       if !event.nil? and event.maxhp > 0 and @actor_atktime <= 0
  69.         @attev = event
  70.         show_ain(2,d)
  71.         dagame_acon(event,event_damage(@actor, event),@actor.animation2_id)
  72.       end
  73.     end
  74.   end
  75.   #--------------------------------------------------------------------------
  76.   # ● 刷新精灵的移动以及接触判断
  77.   #--------------------------------------------------------------------------
  78.   def update_bullet
  79.     for bullet in @bullets
  80.       bullet.update
  81.       case bullet.hit_event
  82.       when String
  83.         if bullet.opacity <= 10
  84.           $scene.spriteset.delete_bullet(bullet)
  85.           @bullets.delete(bullet)
  86.         end
  87.       when Game_Event
  88.         event = bullet.hit_event
  89.         next if !event.is_enemy?
  90.         @attev = event
  91.         dagame_acon(event,event_damage(@actor, event),@actor.animation2_id)
  92.         $scene.spriteset.delete_bullet(bullet)
  93.         @bullets.delete(bullet)
  94.       end
  95.     end
  96.   end
复制代码

作者: chd114    时间: 2013-12-31 16:34
RMXP不可能实现用脚本跳转事件指令的标签
作者: chd114    时间: 2013-12-31 19:39
你那是什么脚本···发来看看···我怎么没见人在6R上发过
作者: domodomodomo    时间: 2013-12-31 20:15
chd114 发表于 2013-12-31 19:39
你那是什么脚本···发来看看···我怎么没见人在6R上发过

http://rpg.blue/forum.php?mod=viewthread&tid=139453
这是原帖,5L就是……用过的确是做到了标签跳转的功能,但是不确定使用上会有什么问题
作者: chd114    时间: 2013-12-31 20:45
domodomodomo 发表于 2013-12-31 20:15
http://rpg.blue/forum.php?mod=viewthread&tid=139453
这是原帖,5L就是……用过的确是做到了标签 ...

这个···我试试看···




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1