Project1

标题: VX的A.RPG(不完全版) [打印本页]

作者: 雷特爾    时间: 2008-6-13 06:54
标题: VX的A.RPG(不完全版)
第一段
  1. #===================================
  2. # Vlad ABS
  3. #===================================
  4. #--------------------------------------------------------------
  5. # Credits to Vlad
  6. #--------------------------------------------------------------
  7. # 創造一個敵人(事件),在事件中加上這些註釋:
  8. # Enemy ID - 在數據庫中敵人的ID
  9. # Die X - X為 1 / 2 ( 1:死後删除敵人   2:不死之身 )
  10. # Follow - 設定是否跟隨敵人
  11. #--------------------------------------------------------------
  12. # 自定義項目
  13. #--------------------------------------------------------------
  14. #--------------------------------------------------------------
  15. # 武器攻撃鍵, 不要改變 [正常對應鍵: A]
  16. Attack_Button = Input::X
  17. #--------------------------------------------------------------
  18. # 技能攻撃鍵, 不要改變 [正常對應鍵: S]  <--也是技能畫面的技能記憶鍵
  19. Skill_Button = {Input::Y => 0}
  20. #--------------------------------------------------------------
  21. # 升級動畫ID (對應數據庫) :
  22. LevelUp_Ani = 40
  23. #--------------------------------------------------------------
  24. # 攻擊動畫, 複製 Enemy_atk_ani[2] = 13
  25. # 修改敵人ID 2 , 還有動畫ID 13
  26. # 範例:25敵人使用24動畫作攻擊動畫 Enemy_atk_ani[25] = 24
  27. Enemy_atk_ani = {}
  28. Enemy_atk_ani[2] = 8
  29. #--------------------------------------------------------------

  30. #--------------------------------------------------------------
  31. # Game Character
  32. #--------------------------------------------------------------
  33. class Game_Character
  34.   attr_accessor :hp
  35.   attr_accessor :mp
  36.   attr_accessor :damage
  37.   attr_accessor :critical
  38.   attr_accessor :wait_ataque
  39.   attr_accessor :die
  40.   alias vlad_abs_gchar_initialize initialize
  41.   def initialize
  42.     @hp = 0
  43.     @mp = 0
  44.     @die = 0
  45.     $skill_for_use = 0
  46.     @wait_ataque = 0
  47.     @damage = nil
  48.     @critical = false
  49.     vlad_abs_gchar_initialize
  50.   end  
  51.   def recebe_atk(attacker)
  52.     attacker_status = (attacker.is_a?(Game_Event) ? attacker.enemy_status : $game_actors[1])
  53.     receptor_status = (self.is_a?(Game_Event) ? self.enemy_status : $game_actors[1])
  54.     self.damage = attacker_status.atk - receptor_status.def
  55.     self.damage *= attacker_status.elements_max_rate(attacker_status.element_set)
  56.     self.damage /= 100
  57.     self.damage = 0 if self.damage < 0
  58.     self.critical = (rand(100) < 4)
  59.     self.damage *= 2 if self.critical
  60.     if self.is_a?(Game_Player)
  61.     $game_actors[1].hp -= self.damage
  62.     if $game_actors[1].hp <= 0
  63.       $scene = Scene_Gameover.new
  64.     end
  65.     elsif self.is_a?(Game_Event)
  66.       self.hp -= self.damage
  67.       if self.hp <= 0
  68.         self.animation_id = 88
  69.           $game_actors[1].gain_exp(enemy_status.exp, 1)
  70.           if @die == 1
  71.           self.erase
  72.         elsif @die == 2
  73.           key = [$game_map.map_id, self.id, "A"]
  74.           $game_self_switches[key] = true
  75.           end
  76.           refresh
  77.         end
  78.     end
  79.   end
  80.    def recebe_skl(attacker)
  81.      for key in Skill_Button.keys
  82.     sklid = Skill_Button[key]
  83.     attacker_status = (attacker.is_a?(Game_Event) ? attacker.enemy_status : $game_actors[1])
  84.     receptor_status = (self.is_a?(Game_Event) ? self.enemy_status : $game_actors[1])
  85.     self.damage = $data_skills[sklid].atk_f - receptor_status.def
  86.     self.damage *= attacker_status.elements_max_rate(attacker_status.element_set)
  87.     self.damage /= 100
  88.     self.damage = 0 if self.damage < 0
  89.     self.critical = (rand(100) < 4)
  90.     self.damage *= 2 if self.critical
  91.     attacker_status.mp -= $data_skills[sklid].mp_cost
  92.     if self.is_a?(Game_Player)
  93.     $game_actors[1].hp -= self.damage
  94.     $scene = Scene_Gameover.new if $game_actors[1].hp <= 0
  95.     elsif self.is_a?(Game_Event)
  96.       self.hp -= self.damage
  97.       if self.hp <= 0
  98.           $game_actors[1].gain_exp(enemy_status.exp, 1)
  99.           if @die == 1
  100.           self.erase
  101.         elsif @die == 2
  102.           key = [$game_map.map_id, self.id, "A"]
  103.           $game_self_switches[key] = true
  104.           end
  105.           refresh
  106.         end
  107.     end
  108.   end
  109. end
  110.   def follow_hero(dx, dy)
  111.         sx = @x - dx
  112.         sy = @y - dy
  113.         if sx == 0 and sy == 0
  114.           return
  115.         end
  116.         abs_sx = sx.abs
  117.         abs_sy = sy.abs
  118.         if abs_sx == 0
  119.           sy > 0 ? move_up : move_down
  120.           if not moving? and sx != 0
  121.             sx > 0 ? move_left : move_right
  122.           end
  123.           return
  124.         elsif abs_sy == 0
  125.           sx > 0 ? move_left : move_right
  126.           if not moving? and sy != 0
  127.             sy > 0 ? move_up : move_down
  128.           end
  129.           return
  130.         end
  131.         if abs_sx == abs_sy
  132.           rand(2) == 0 ? abs_sx += 1 : abs_sy += 1
  133.         end
  134.         if abs_sx > abs_sy
  135.           sx > 0 ? move_left : move_right
  136.           if not moving? and sy != 0
  137.             sy > 0 ? move_up : move_down
  138.           end
  139.         else
  140.           sy > 0 ? move_up : move_down
  141.           if not moving? and sx != 0
  142.             sx > 0 ? move_left : move_right
  143.           end
  144.         end
  145.       end
  146.       def raio(dx, dy)
  147.         ax = (@x - dx) ** 2
  148.         ay = (@y - dy) ** 2
  149.         return Math.sqrt(ax + ay)
  150.       end
  151. end

  152. #--------------------------------------------------------------
  153. # Game Event
  154. #--------------------------------------------------------------
  155. class Game_Event < Game_Character
  156.   attr_reader :inimigo
  157.   attr_reader :enemy_status
  158.   alias vlad_abs_gevent_initialize initialize
  159.   alias vlad_abs_gevent_update update
  160.   alias vlad_abs_gevent_refresh refresh
  161.   def initialize(map_id, event)
  162.     @inimigo = false
  163.     @automove = false
  164.     vlad_abs_gevent_initialize(map_id, event)
  165.   end
  166.   def check_com(comentario)
  167.     return false if @list.nil? or @list.size <= 0
  168.     for item in @list
  169.       if item.code == 108 or item.code == 408
  170.         if item.parameters[0].downcase.include?(comentario.downcase)
  171.           return true
  172.         end
  173.       end
  174.     end
  175.   end
  176.   def check_comment(comentario)
  177.     com = comentario.downcase
  178.     return 0 if @list.nil? or @list.size <= 0
  179.     for item in @list
  180.       if item.code == 108 or item.code == 408
  181.         if item.parameters[0].downcase =~ /#{com}[ ]?(\d+)?/
  182.           return $1.to_i
  183.         end
  184.       end
  185.     end
  186.     return 0
  187.   end
  188.   def update
  189.     vlad_abs_gevent_update
  190.     if @inimigo
  191.       new_x = (@x + (@direction == 4 ? -1 : @direction == 6 ? 1 : 0))
  192.       new_y = (@y + (@direction == 8 ? -1 : @direction == 2 ? 1 : 0))
  193.       if self.wait_ataque > 0
  194.         self.wait_ataque -= 1
  195.       elsif $game_player.x == new_x and $game_player.y == new_y
  196.          $game_player.recebe_atk(self)
  197.          $game_player.animation_id = self.enemy_atk_animation_id
  198.          $game_player.jump(0,0)
  199.         self.wait_ataque = 60
  200.       end
  201.     end
  202.      if @automove
  203.           unless moving?
  204.             self.follow_hero($game_player.x, $game_player.y)
  205.           end
  206.         end
  207.   end
  208.   def refresh
  209.     vlad_abs_gevent_refresh
  210.     @inimigo = false
  211.     @enemy_id = check_comment("Enemy")
  212.     @automove = true if check_com("Follow") == true
  213.     @die = check_comment("Die")
  214.     if @enemy_id > 0
  215.       @inimigo = true
  216.       @enemy_status = Game_Enemy.new(@enemy_id, @enemy_id)
  217.             self.hp = @enemy_status.maxhp
  218.             self.mp = @enemy_status.maxmp
  219.     end
  220.   end
  221.   def enemy_atk_animation_id
  222.     if Enemy_atk_ani[@enemy_id]
  223.     return (@enemy_status.nil? ? 0 : Enemy_atk_ani[@enemy_id])
  224.   else
  225.     return (@enemy_status.nil? ? 0 : 1)
  226.   end
  227.   end
  228.   def Enemy_atk_ani
  229.     return Enemy_atk_ani
  230.   end
  231. end

  232. #--------------------------------------------------------------
  233. # Game Player
  234. #--------------------------------------------------------------
  235. class Game_Player < Game_Character
  236.   alias vlad_abs_gplayer_update update
  237.   alias vlad_abs_gplayer_refresh refresh
  238.   def update
  239.     vlad_abs_gplayer_update
  240.     if self.wait_ataque > 0
  241.       self.wait_ataque -= 1
  242.     end
  243.   def refresh
  244.     vlad_abs_gplayer_refresh
  245.     self.hp = $game_actors[1].hp
  246.     self.mp = $game_actors[1].mp
  247.   end
  248.     if Input.trigger?(Attack_Button) and self.wait_ataque <= 0
  249.       new_x = (@x + ($game_player.direction == 4 ? -1 : $game_player.direction == 6 ? 1 : 0))
  250.       new_y = (@y + ($game_player.direction == 8 ? -1 : $game_player.direction == 2 ? 1 : 0))
  251.       for event in $game_map.events.values
  252.         if event.inimigo
  253.           if event.x == new_x and event.y == new_y
  254.             event.recebe_atk(self)
  255.             event.animation_id = self.player_atk_animation_id
  256.             event.jump(0,0)
  257.             self.wait_ataque = 30
  258.             break
  259.           end
  260.         end
  261.       end
  262.     end
  263.     for key in Skill_Button.keys
  264.     if Input.trigger?(key) and Skill_Button[key] != nil and Skill_Button[key] != 0 and $game_actors[1].mp >= $data_skills[Skill_Button[key]].mp_cost and self.wait_ataque <= 0
  265.       new_x = (@x + ($game_player.direction == 4 ? -1 : $game_player.direction == 6 ? 1 : 0))
  266.       new_y = (@y + ($game_player.direction == 8 ? -1 : $game_player.direction == 2 ? 1 : 0))
  267.       for event in $game_map.events.values
  268.         if event.inimigo
  269.           if event.x == new_x and event.y == new_y
  270.             event.recebe_skl(self)
  271.             event.animation_id = self.player_skl_animation_id
  272.             event.jump(0,0)
  273.             self.wait_ataque = 60
  274.             break
  275.           end
  276.         end
  277.       end
  278.     end
  279.     end
  280.     def player_atk_animation_id
  281.     return ($game_actors[1].nil? ? 0 : $game_actors[1].atk_animation_id)
  282.   end
  283.   def player_skl_animation_id
  284.     for key in Skill_Button.keys
  285.       sklid = Skill_Button[key]
  286.     return ($game_actors[1].nil? ? 0 : $data_skills[sklid].animation_id)
  287.     end
  288.   end
  289.     def Attack_Button
  290.     return Attack_Button
  291.   end
  292.   def Skill_Button
  293.     return Skill_Button
  294.   end
  295.   end
  296. end

  297. #--------------------------------------------------------------
  298. # Game Actor
  299. #--------------------------------------------------------------
  300. class Game_Actor
  301.   alias vlad_abs_change_exp change_exp
  302.   def change_exp(exp, show)
  303.     last_level = @level
  304.     last_skills = skills
  305.     @exp = [[exp, 9999999].min, 0].max
  306.     while @exp >= @exp_list[@level+1] and @exp_list[@level+1] > 0
  307.       level_up
  308.     end
  309.     while @exp < @exp_list[@level]
  310.       level_down
  311.     end
  312.     @hp = [@hp, maxhp].min
  313.     @mp = [@mp, maxmp].min
  314.     if show and @level > last_level
  315.       show_level_up
  316.     end
  317.     vlad_abs_change_exp(exp,show)
  318.   end
  319.   def show_level_up
  320.     $game_player.animation_id = LevelUp_Ani
  321.     $game_actors[1].hp = $game_actors[1].maxhp
  322.     $game_actors[1].mp = $game_actors[1].maxmp
  323.   end
  324.   def LevelUp_Ani
  325.     return LevelUp_Ani
  326.   end
  327. end

  328. #--------------------------------------------------------------
  329. # Sprite Base
  330. #--------------------------------------------------------------
  331.   class Sprite_Base
  332.   alias animation animation_set_sprites
  333. def animation_set_sprites(frame)
  334.     cell_data = frame.cell_data
  335.     for i in 0..15
  336.       sprite = @animation_sprites[i]
  337.       next if sprite == nil
  338.       pattern = cell_data[i, 0]
  339.       if pattern == nil or pattern == -1
  340.         sprite.visible = false
  341.         next
  342.       end
  343.       if pattern < 100
  344.         sprite.bitmap = @animation_bitmap1
  345.       else
  346.         sprite.bitmap = @animation_bitmap2
  347.       end
  348.       sprite.visible = true
  349.       sprite.src_rect.set(pattern % 5 * 192,
  350.         pattern % 100 / 5 * 192, 192, 192)
  351.       if @animation_mirror
  352.         sprite.x = @animation_ox - cell_data[i, 1] / 2
  353.         sprite.y = @animation_oy - cell_data[i, 2] / 2
  354.         sprite.angle = (360 - cell_data[i, 4])
  355.         sprite.mirror = (cell_data[i, 5] == 0)
  356.       else
  357.         sprite.x = @animation_ox + cell_data[i, 1] / 2
  358.         sprite.y = @animation_oy + cell_data[i, 2] / 2
  359.         sprite.angle = cell_data[i, 4]
  360.         sprite.mirror = (cell_data[i, 5] == 1)
  361.       end
  362.       sprite.z = self.z + 300
  363.       sprite.ox = 96
  364.       sprite.oy = 96
  365.       sprite.zoom_x = cell_data[i, 3] / 200.0
  366.       sprite.zoom_y = cell_data[i, 3] / 200.0
  367.       sprite.opacity = cell_data[i, 6] * self.opacity / 255.0
  368.       sprite.blend_type = cell_data[i, 7]
  369.     end
  370.   end
  371. end
  372. #--------------------------------------------------------------
  373. # Sprite Character
  374. #--------------------------------------------------------------
  375. class Sprite_Character < Sprite_Base
  376.   alias vlad_abs_spchar_update update
  377.   def initialize(viewport, character = nil)
  378.     super(viewport)
  379.     @character = character
  380.     @balloon_duration = 0
  381.     @_damage_duration = 0
  382.     update
  383.   end
  384.   def update
  385.     super
  386.     if @_damage_duration > 0
  387.       @_damage_duration -=1
  388.         @_damage_sprite.x = self.x
  389.         if @_damage_duration <= 0
  390.           dispose_damage
  391.         end
  392.       end
  393.       if @character != nil and @character.damage != nil
  394.       damage(@character.damage, @character.critical)
  395.       @character.damage = nil
  396.       @character.critical = false
  397.     end
  398.     vlad_abs_spchar_update
  399.   end
  400. def damage(value, critical)
  401.       dispose_damage
  402.       if value.is_a?(Numeric)
  403.         damage_string = value.abs.to_s
  404.       else
  405.         damage_string = value.to_s
  406.       end
  407.       bitmap = Bitmap.new(160, 48)
  408.       bitmap.font.name = "Georgia"
  409.       bitmap.font.size = 20
  410.       bitmap.font.italic = true
  411.       if value.is_a?(Numeric) and value <= 0
  412.         bitmap.font.color.set(0, 0, 0)
  413.         bitmap.draw_text(1, 13, 160, 36, "Fallo", 1)
  414.         bitmap.font.color.set(255, 245, 155)
  415.         bitmap.draw_text(0, 12, 160, 36, "Fallo", 1)
  416.       else
  417.         bitmap.font.color.set(0, 0, 0)
  418.         bitmap.draw_text(1, 13, 160, 36, damage_string, 1)
  419.         bitmap.font.color.set(255, 255, 255)
  420.         bitmap.draw_text(0, 12, 160, 36, damage_string, 1)
  421.       end
  422.       if critical
  423.         bitmap.font.color.set(0, 0, 0)
  424.         bitmap.draw_text(1, 6, 160, 20, "Critical", 1)
  425.         bitmap.font.color.set(255, 245, 155)
  426.         bitmap.draw_text(0, 5, 160, 20, "Critical", 1)
  427.       end
  428.       @_damage_sprite = ::Sprite.new(self.viewport)
  429.       @_damage_sprite.bitmap = bitmap
  430.       @_damage_sprite.ox = 80
  431.       @_damage_sprite.oy = 20
  432.       @_damage_sprite.x = self.x
  433.       @_damage_sprite.y = self.y - self.oy / 2 - 40
  434.       @_damage_sprite.z += 99999
  435.       @_damage_duration = 30
  436.     end
  437.     def show_text(string, size=16, color=0)
  438.       dispose_damage
  439.       damage_string = string
  440.       if string.is_a?(Array)
  441.         array = true
  442.       else
  443.         array = false
  444.       end
  445.       bitmap = Bitmap.new(160, 48)
  446.       bitmap.font.name = "Georgia"
  447.       bitmap.font.size = size
  448.       bitmap.font.italic = true
  449.       if array
  450.         for i in 0..string.size
  451.           next if damage_string[i] == nil
  452.           bitmap.font.color.set(96, 96-20, 0) if color == 0
  453.           bitmap.font.color.set(0, 0, 0) if color != 0
  454.           bitmap.draw_text(-1, (12+(16*i)-1)-16, 160, 36, damage_string[i], 1)
  455.           bitmap.draw_text(+1, (12+(16*i)-1)-16, 160, 36, damage_string[i], 1)
  456.           bitmap.draw_text(-1, (12+(16*i)+1)-16, 160, 36, damage_string[i], 1)
  457.           bitmap.draw_text(+1, (12+(16*i)+1)-16, 160, 36, damage_string[i], 1)
  458.           bitmap.font.color.set(255, 245, 155) if color == 0
  459.           bitmap.font.color.set(144, 199, 150) if color == 1
  460.           bitmap.font.color.set(197, 147, 190)if color == 2
  461.           bitmap.font.color.set(138, 204, 198)if color == 3
  462.           bitmap.draw_text(0, (12+(16*i))-16, 160, 36, damage_string[i], 1)
  463.         end
  464.       else
  465.         bitmap.font.color.set(96, 96-20, 0) if color == 0
  466.         bitmap.font.color.set(0, 0, 0) if color != 0
  467.         bitmap.draw_text(-1, 12-1, 160, 36, damage_string, 1)
  468.         bitmap.draw_text(+1, 12-1, 160, 36, damage_string, 1)
  469.         bitmap.draw_text(-1, 12+1, 160, 36, damage_string, 1)
  470.         bitmap.draw_text(+1, 12+1, 160, 36, damage_string, 1)
  471.         bitmap.font.color.set(255, 245, 155) if color == 0
  472.         bitmap.font.color.set(144, 199, 150) if color == 1
  473.         bitmap.font.color.set(197, 147, 190)if color == 2
  474.         bitmap.font.color.set(138, 204, 198)if color == 3
  475.         bitmap.draw_text(0, 12, 160, 36, damage_string, 1)
  476.       end
  477.       @_damage_sprite = ::Sprite.new(self.viewport)
  478.       @_damage_sprite.bitmap = bitmap
  479.       @_damage_sprite.ox = 80
  480.       @_damage_sprite.oy = 20
  481.       @_damage_sprite.x = self.x
  482.       @_damage_sprite.y = self.y - self.oy / 2
  483.       @_damage_sprite.z = 3000
  484.       @_damage_duration = 30
  485.     end
  486.     def dispose_damage
  487.     if @_damage_sprite != nil
  488.       @_damage_sprite.dispose
  489.       @_damage_sprite = nil
  490.     end
  491.   end
  492. end
  493.   
  494. #--------------------------------------------------------------
  495. # Window Skill
  496. #--------------------------------------------------------------
  497. class Scene_Skill
  498.   alias vlad_abs_sskill_initialize initialize
  499.   alias vlad_abs_sskill_update update
  500.   def initialize(actor_index = 0, equip_index = 0)
  501.     @memory = Window_Command.new(150, ["確 定 S 鍵 技 能"])
  502.     @memory.active = false
  503.     @memory.visible = false
  504.     @memory.x = (544 - @memory.width) / 2
  505.     @memory.y = (416 - @memory.height) / 2
  506.     @memory.z = 1500
  507.     vlad_abs_sskill_initialize
  508.   end
  509. def update
  510.   update_skill
  511.   @memory.update if @memory.active
  512.   return update_memory if @memory.active
  513.   vlad_abs_sskill_update
  514. end
  515. def update_skill
  516.   for key in Skill_Button.keys
  517.   if Input.trigger?(key)
  518.   Sound.play_decision
  519.   Skill_Button[key] = @skill_window.skill.id
  520.   @memory.active = @memory.visible = true
  521.   @skill_window.active = false
  522. end
  523. end
  524. end
  525.   def update_memory
  526. if Input.trigger?(Input::C)
  527.   Sound.play_decision
  528.   @memory.active = @memory.visible = false
  529.   @skill_window.active = true
  530. end
  531. end
  532.   def Skill_Button
  533.     return Skill_Button
  534.   end
  535. end

  536. #--------------------------------------------------------------
  537. # FINISH
  538. #--------------------------------------------------------------
复制代码

第二段
  1. #=============================================================================
  2. # Window Hud
  3. #=============================================================================

  4. class Window_Hud < Window_Base
  5.   def initialize
  6.     super(0,0,128,96)
  7.     self.opacity = 0
  8. #    self.visible = false
  9.     refresh
  10.   end
  11.   def refresh
  12.     self.contents.clear
  13.       actor = $game_actors[1]
  14.       draw_actor_hp(actor, 0, 0, 96)
  15.       draw_actor_mp(actor, 0, 32, 96)
  16.    end
  17.    def update
  18. #     self.visible = true if $game_switches[1] == true # 1=interruptor que activa y desactiva el HUD
  19.      refresh
  20.    end
  21. end

  22. class Scene_Map
  23.   alias hud_main main
  24.   alias hud_update update
  25.   alias hud_terminate terminate
  26.   def main
  27.     @hud = Window_Hud.new
  28.     hud_main
  29.   end
  30.   def update
  31.     @hud.update
  32.     hud_update
  33.   end
  34.   def terminate
  35.     @hud.dispose
  36.   end
  37. end
复制代码


但是第一段的24~26汉化不了
總不懂是啥意思

范例::http://rpg.blue/upload_program/files/Project3_93741178.rar
作者: 雪流星    时间: 2008-6-13 07:18
# Attack Animation, copy Enemy_atk_ani[2] = 13
# change the 2 to the ID of the enemy, and the 13 to the ID of the animation.
# Example: Enemy_atk_ani[25] = 24
# 攻擊動畫, 複製 Enemy_atk_ani[2] = 13
# 修改敵人ID 2 , 還有動畫ID 13
# 範例:25敵人使用24動畫作攻擊動畫 Enemy_atk_ani[25] = 24

作者: 色即是空    时间: 2008-6-13 17:23
提示: 作者被禁止或删除 内容自动屏蔽
作者: 喵喵の黄昏    时间: 2008-6-13 20:07
提示: 作者被禁止或删除 内容自动屏蔽
作者: 喵喵の黄昏    时间: 2008-6-13 20:18
提示: 作者被禁止或删除 内容自动屏蔽
作者: ONEWateR    时间: 2008-6-14 05:01
为什么不支持呢?
说不定以后还要用到呢{/hx}
支持!
作者: 喵喵の黄昏    时间: 2008-6-17 09:38
提示: 作者被禁止或删除 内容自动屏蔽
作者: 偶尔杀人越货    时间: 2008-6-21 04:41
我在地球村发布了完整版,目前完整版已经和谐,但是只汉化了一部分,如果lz有兴趣的话请短信我
作者: Kirin    时间: 2008-6-26 21:06
好像只有一个人在战斗呢……不能换人么?
作者: 越前リョーマ    时间: 2008-6-27 02:20
以下引用Kirin于2008-6-26 13:06:29的发言:

好像只有一个人在战斗呢……不能换人么?

ARPG一般都是这样的吧……
作者: 偶尔杀人越货    时间: 2008-6-27 03:26
ls在找arpg啊...
作者: Kirin    时间: 2008-6-28 21:07
以下引用越前リョーマ于2008-6-26 18:20:55的发言:
ARPG一般都是这样的吧……


不是的,以前有个Amaranth的《恶灵的预言》(还是2003的)就是可以在一个角色战斗后换人的,而且战斗槽只有在村庄以外的地方才显示……
作者: 偶尔杀人越货    时间: 2008-6-29 04:34
在队员方面神迹时代做的是最好的,可以切换队员且可以群P
作者: Kirin    时间: 2008-6-30 16:27
以下引用偶尔杀人越货于2008-6-28 20:34:26的发言:

在队员方面神迹时代做的是最好的,可以切换队员且可以群P

问题是……神迹时代它是XP的……我早就把XP抛弃了……我又是脚本小白每天不得不过着伸手党的日子{/ll}

其实你翻译的那个脚本我也看过又试玩过,真是不错{/qiang}~可是……我现在做的是一个短篇,需要一个爽快且简单的系统,(最主要的是作为小白看到那么多需要设定也晕过去了)只好默默地和你的脚本say byebye了~T_T~


PS.话说LZ的脚本,没有设显示血槽的开关……我不想在演示剧情的时候还看到那血槽莫名其妙地挂在那里!这怎么办……
作者: Kirin    时间: 2008-7-1 01:15
原来血槽开关在第二页……不好意思漏看了{/hx}
作者: Kirin    时间: 2008-7-10 19:28
这个脚本有BUG……希望用它的人注意:

http://rpg.blue/viewthread.php?tid=93118

感谢ONEWateR、wy29的指点{/qiang}~~


作者: 小羽丶囧    时间: 2008-11-29 04:50
很喜欢~不过我不会做
作者: zhanghao    时间: 2008-12-27 06:58
完全版的在哪?
作者: 松谷修三    时间: 2009-1-9 00:07
12月26.....不会挖坟吧{/fd}
这个脚本怪物死了怎么掉物品{/fd}
作者: leverlup    时间: 2009-7-9 16:27
顶下再看{:3_64:}
作者: 牲口    时间: 2009-7-20 03:07
# Die X - X為 1 / 2 ( 1:死後删除敵人   2:不死之身 )

这里的2并不是 不死之身
是打开怪物的独立开关A
作者: 赤い彗星    时间: 2009-10-11 21:47
像圣剑传说可以切换领队
作者: ak68261095    时间: 2010-7-4 21:55
支持一下 翻译不容易 辛苦了
作者: 炎淋    时间: 2010-7-13 12:31
很好很强大。
作者: 炎淋    时间: 2010-7-13 12:32
你那范例不可打开,只能给脚本不会的看脚本放哪。
作者: njustlifeng    时间: 2010-7-22 11:31
不错的东西
作者: 2black    时间: 2010-7-22 19:21
这脚本如何使怪物掉宝~~{:nm_2:}
作者: nangky    时间: 2010-8-2 23:19
请问一下怎么更改射程
作者: Vae许嵩城府    时间: 2010-8-16 11:33
为什么升不了级:L




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