| 赞 | 2  | 
 
| VIP | 73 | 
 
| 好人卡 | 13 | 
 
| 积分 | 2 | 
 
| 经验 | 1598378 | 
 
| 最后登录 | 2014-9-24 | 
 
| 在线时间 | 2399 小时 | 
 
 
 
 
 
Lv1.梦旅人 
	- 梦石
 - 0 
 
        - 星屑
 - 239 
 
        - 在线时间
 - 2399 小时
 
        - 注册时间
 - 2008-4-11
 
        - 帖子
 - 12326
 
 
   
  
 | 
	
41星屑 
 本帖最后由 protosssonny 于 2013-4-7 18:15 编辑  
 
这是取自一个最原始的ARPG工程的脚本 
粗略看一下应该就能明白它简单到何种程度 
 
 
 
最简单ARPG.rar
(243.21 KB, 下载次数: 81)
 
 
 
目前自然有很多完胜此脚本的ARPG工程,但是小瞬有强迫症 
已经做到一半的游戏,再也不想大修大改了。 
 
求在此脚本基础上增加三个不会和任何其他脚本有冲突的功能(包括半事件半脚本) 
 
1.怪物可以掉落物品,物品掉落在地,主角经过后才会被捡起 
 
2.技能可以更简便的使用(比如设置键盘快捷键) 
 
3.敌人也可以使用技能,换而言之就是数据库里面敌人的属性都被被映射到战斗中 
 
4.敌我之间有属性克制,求加入各角色属性耐性和属性伤害数据- #===================================
 
 - # Vlad ABS
 
 - #===================================
 
 - #--------------------------------------------------------------
 
 - # Credits to Vlad
 
 - #--------------------------------------------------------------
 
 - # 創造一個敵人(事件),在事件中加上這些註釋:
 
 - # Enemy ID - 在數據庫中敵人的ID
 
 - # Die X - X為 1 / 2 ( 1:死後删除敵人   2:不死之身 )
 
 - # Follow - 設定是否跟隨敵人
 
 - #--------------------------------------------------------------
 
 - # 自定義項目
 
 - #--------------------------------------------------------------
 
 - #--------------------------------------------------------------
 
 - # 武器攻撃鍵, 不要改變 [正常對應鍵: A]
 
 - Attack_Button = Input::X
 
 - #--------------------------------------------------------------
 
 - # 技能攻撃鍵, 不要改變 [正常對應鍵: S]  <--也是技能畫面的技能記憶鍵
 
 - Skill_Button = {Input::Y => 0}
 
 - #--------------------------------------------------------------
 
 - # 升級動畫ID (對應數據庫) :
 
 - LevelUp_Ani = 40
 
 - #--------------------------------------------------------------
 
 - # 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 = {}
 
 - Enemy_atk_ani[2] = 8
 
 - #--------------------------------------------------------------
 
  
- #--------------------------------------------------------------
 
 - # Game Character
 
 - #--------------------------------------------------------------
 
 - class Game_Character
 
 -   attr_accessor :hp
 
 -   attr_accessor :mp
 
 -   attr_accessor :damage
 
 -   attr_accessor :critical
 
 -   attr_accessor :wait_ataque
 
 -   attr_accessor :die
 
 -   alias vlad_abs_gchar_initialize initialize
 
 -   def initialize
 
 -     @hp = 0
 
 -     @mp = 0
 
 -     @die = 0
 
 -     $skill_for_use = 0
 
 -     @wait_ataque = 0
 
 -     @damage = nil
 
 -     @critical = false
 
 -     vlad_abs_gchar_initialize
 
 -   end  
 
 -   def recebe_atk(attacker)
 
 -     attacker_status = (attacker.is_a?(Game_Event) ? attacker.enemy_status : $game_actors[1])
 
 -     receptor_status = (self.is_a?(Game_Event) ? self.enemy_status : $game_actors[1])
 
 -     self.damage = attacker_status.atk - receptor_status.def
 
 -     self.damage *= attacker_status.elements_max_rate(attacker_status.element_set)
 
 -     self.damage /= 100
 
 -     self.damage = 0 if self.damage < 0
 
 -     self.critical = (rand(100) < 4)
 
 -     self.damage *= 2 if self.critical
 
 -     if self.is_a?(Game_Player)
 
 -     $game_actors[1].hp -= self.damage
 
 -     if $game_actors[1].hp <= 0
 
 -       $scene = Scene_Gameover.new
 
 -     end
 
 -     elsif self.is_a?(Game_Event)
 
 -       self.hp -= self.damage
 
 -       if self.hp <= 0
 
 -         self.animation_id = 88
 
 -           $game_actors[1].gain_exp(enemy_status.exp, 1)
 
 -           if @die == 1
 
 -           self.erase
 
 -         elsif @die == 2
 
 -           key = [$game_map.map_id, self.id, "A"]
 
 -           $game_self_switches[key] = true
 
 -           end
 
 -           refresh
 
 -         end
 
 -     end
 
 -   end
 
 -    def recebe_skl(attacker)
 
 -      for key in Skill_Button.keys
 
 -     sklid = Skill_Button[key]
 
 -     attacker_status = (attacker.is_a?(Game_Event) ? attacker.enemy_status : $game_actors[1])
 
 -     receptor_status = (self.is_a?(Game_Event) ? self.enemy_status : $game_actors[1])
 
 -     self.damage = $data_skills[sklid].atk_f - receptor_status.def
 
 -     self.damage *= attacker_status.elements_max_rate(attacker_status.element_set)
 
 -     self.damage /= 100
 
 -     self.damage = 0 if self.damage < 0
 
 -     self.critical = (rand(100) < 4)
 
 -     self.damage *= 2 if self.critical
 
 -     attacker_status.mp -= $data_skills[sklid].mp_cost
 
 -     if self.is_a?(Game_Player)
 
 -     $game_actors[1].hp -= self.damage
 
 -     $scene = Scene_Gameover.new if $game_actors[1].hp <= 0
 
 -     elsif self.is_a?(Game_Event)
 
 -       self.hp -= self.damage
 
 -       if self.hp <= 0
 
 -           $game_actors[1].gain_exp(enemy_status.exp, 1)
 
 -           if @die == 1
 
 -           self.erase
 
 -         elsif @die == 2
 
 -           key = [$game_map.map_id, self.id, "A"]
 
 -           $game_self_switches[key] = true
 
 -           end
 
 -           refresh
 
 -         end
 
 -     end
 
 -   end
 
 - end
 
 -   def follow_hero(dx, dy)
 
 -         sx = @x - dx
 
 -         sy = @y - dy
 
 -         if sx == 0 and sy == 0
 
 -           return
 
 -         end
 
 -         abs_sx = sx.abs
 
 -         abs_sy = sy.abs
 
 -         if abs_sx == 0
 
 -           sy > 0 ? move_up : move_down
 
 -           if not moving? and sx != 0
 
 -             sx > 0 ? move_left : move_right
 
 -           end
 
 -           return
 
 -         elsif abs_sy == 0
 
 -           sx > 0 ? move_left : move_right
 
 -           if not moving? and sy != 0
 
 -             sy > 0 ? move_up : move_down
 
 -           end
 
 -           return
 
 -         end
 
 -         if abs_sx == abs_sy
 
 -           rand(2) == 0 ? abs_sx += 1 : abs_sy += 1
 
 -         end
 
 -         if abs_sx > abs_sy
 
 -           sx > 0 ? move_left : move_right
 
 -           if not moving? and sy != 0
 
 -             sy > 0 ? move_up : move_down
 
 -           end
 
 -         else
 
 -           sy > 0 ? move_up : move_down
 
 -           if not moving? and sx != 0
 
 -             sx > 0 ? move_left : move_right
 
 -           end
 
 -         end
 
 -       end
 
 -       def raio(dx, dy)
 
 -         ax = (@x - dx) ** 2
 
 -         ay = (@y - dy) ** 2
 
 -         return Math.sqrt(ax + ay)
 
 -       end
 
 - end
 
  
- #--------------------------------------------------------------
 
 - # Game Event
 
 - #--------------------------------------------------------------
 
 - class Game_Event < Game_Character
 
 -   attr_reader :inimigo
 
 -   attr_reader :enemy_status
 
 -   alias vlad_abs_gevent_initialize initialize
 
 -   alias vlad_abs_gevent_update update
 
 -   alias vlad_abs_gevent_refresh refresh
 
 -   def initialize(map_id, event)
 
 -     @inimigo = false
 
 -     @automove = false
 
 -     vlad_abs_gevent_initialize(map_id, event)
 
 -   end
 
 -   def check_com(comentario)
 
 -     return false if @list.nil? or @list.size <= 0 
 
 -     for item in @list
 
 -       if item.code == 108 or item.code == 408
 
 -         if item.parameters[0].downcase.include?(comentario.downcase)
 
 -           return true
 
 -         end
 
 -       end
 
 -     end
 
 -   end
 
 -   def check_comment(comentario)
 
 -     com = comentario.downcase
 
 -     return 0 if @list.nil? or @list.size <= 0 
 
 -     for item in @list
 
 -       if item.code == 108 or item.code == 408
 
 -         if item.parameters[0].downcase =~ /#{com}[ ]?(\d+)?/
 
 -           return $1.to_i
 
 -         end
 
 -       end
 
 -     end
 
 -     return 0
 
 -   end
 
 -   def update
 
 -     vlad_abs_gevent_update
 
 -     if @inimigo
 
 -       new_x = (@x + (@direction == 4 ? -1 : @direction == 6 ? 1 : 0))
 
 -       new_y = (@y + (@direction == 8 ? -1 : @direction == 2 ? 1 : 0))
 
 -       if self.wait_ataque > 0
 
 -         self.wait_ataque -= 1
 
 -       elsif $game_player.x == new_x and $game_player.y == new_y
 
 -          $game_player.recebe_atk(self)
 
 -          $game_player.animation_id = self.enemy_atk_animation_id
 
 -          $game_player.jump(0,0)
 
 -         self.wait_ataque = 60
 
 -       end
 
 -     end
 
 -      if @automove
 
 -           unless moving?
 
 -             self.follow_hero($game_player.x, $game_player.y)
 
 -           end
 
 -         end
 
 -   end
 
 -   def refresh
 
 -     vlad_abs_gevent_refresh
 
 -     @inimigo = false
 
 -     @enemy_id = check_comment("Enemy")
 
 -     @automove = true if check_com("Follow") == true
 
 -     @die = check_comment("Die")
 
 -     if @enemy_id > 0
 
 -       @inimigo = true
 
 -       @enemy_status = Game_Enemy.new(@enemy_id, @enemy_id)
 
 -             self.hp = @enemy_status.maxhp
 
 -             self.mp = @enemy_status.maxmp
 
 -     end
 
 -   end
 
 -   def enemy_atk_animation_id
 
 -     if Enemy_atk_ani[@enemy_id]
 
 -     return (@enemy_status.nil? ? 0 : Enemy_atk_ani[@enemy_id])
 
 -   else
 
 -     return (@enemy_status.nil? ? 0 : 1)
 
 -   end
 
 -   end
 
 -   def Enemy_atk_ani
 
 -     return Enemy_atk_ani
 
 -   end
 
 - end
 
  
- #--------------------------------------------------------------
 
 - # Game Player
 
 - #--------------------------------------------------------------
 
 - class Game_Player < Game_Character
 
 -   alias vlad_abs_gplayer_update update
 
 -   alias vlad_abs_gplayer_refresh refresh
 
 -   def update
 
 -     vlad_abs_gplayer_update
 
 -     if self.wait_ataque > 0
 
 -       self.wait_ataque -= 1
 
 -     end
 
 -   def refresh
 
 -     vlad_abs_gplayer_refresh
 
 -     self.hp = $game_actors[1].hp
 
 -     self.mp = $game_actors[1].mp
 
 -   end
 
 -     if Input.trigger?(Attack_Button) and self.wait_ataque <= 0
 
 -       new_x = (@x + ($game_player.direction == 4 ? -1 : $game_player.direction == 6 ? 1 : 0))
 
 -       new_y = (@y + ($game_player.direction == 8 ? -1 : $game_player.direction == 2 ? 1 : 0))
 
 -       for event in $game_map.events.values
 
 -         if event.inimigo
 
 -           if event.x == new_x and event.y == new_y
 
 -             event.recebe_atk(self)
 
 -             event.animation_id = self.player_atk_animation_id
 
 -             event.jump(0,0)
 
 -             self.wait_ataque = 30
 
 -             break
 
 -           end
 
 -         end
 
 -       end
 
 -     end
 
 -     for key in Skill_Button.keys
 
 -     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
 
 -       new_x = (@x + ($game_player.direction == 4 ? -1 : $game_player.direction == 6 ? 1 : 0))
 
 -       new_y = (@y + ($game_player.direction == 8 ? -1 : $game_player.direction == 2 ? 1 : 0))
 
 -       for event in $game_map.events.values
 
 -         if event.inimigo
 
 -           if event.x == new_x and event.y == new_y
 
 -             event.recebe_skl(self)
 
 -             event.animation_id = self.player_skl_animation_id
 
 -             event.jump(0,0)
 
 -             self.wait_ataque = 60
 
 -             break
 
 -           end
 
 -         end
 
 -       end
 
 -     end
 
 -     end
 
 -     def player_atk_animation_id
 
 -     return ($game_actors[1].nil? ? 0 : $game_actors[1].atk_animation_id)
 
 -   end
 
 -   def player_skl_animation_id
 
 -     for key in Skill_Button.keys
 
 -       sklid = Skill_Button[key]
 
 -     return ($game_actors[1].nil? ? 0 : $data_skills[sklid].animation_id)
 
 -     end
 
 -   end
 
 -     def Attack_Button
 
 -     return Attack_Button
 
 -   end
 
 -   def Skill_Button
 
 -     return Skill_Button
 
 -   end
 
 -   end
 
 - end
 
  
- #--------------------------------------------------------------
 
 - # Game Actor
 
 - #--------------------------------------------------------------
 
 - class Game_Actor
 
 -   alias vlad_abs_change_exp change_exp
 
 -   def change_exp(exp, show)
 
 -     last_level = @level
 
 -     last_skills = skills
 
 -     [url=home.php?mod=space&uid=13302]@exp[/url] = [[exp, 9999999].min, 0].max
 
 -     while [url=home.php?mod=space&uid=13302]@exp[/url] >= @exp_list[@level+1] and @exp_list[@level+1] > 0
 
 -       level_up
 
 -     end
 
 -     while @exp < @exp_list[@level]
 
 -       level_down
 
 -     end
 
 -     @hp = [@hp, maxhp].min
 
 -     @mp = [@mp, maxmp].min
 
 -     if show and [url=home.php?mod=space&uid=22147]@level[/url] > last_level
 
 -       show_level_up
 
 -     end
 
 -     vlad_abs_change_exp(exp,show)
 
 -   end
 
 -   def show_level_up
 
 -     $game_player.animation_id = LevelUp_Ani
 
 -     $game_actors[1].hp = $game_actors[1].maxhp
 
 -     $game_actors[1].mp = $game_actors[1].maxmp
 
 -   end
 
 -   def LevelUp_Ani
 
 -     return LevelUp_Ani
 
 -   end
 
 - end
 
  
- #--------------------------------------------------------------
 
 - # Sprite Base
 
 - #--------------------------------------------------------------
 
 -   class Sprite_Base 
 
 -   alias animation animation_set_sprites
 
 -  def animation_set_sprites(frame)
 
 -     cell_data = frame.cell_data
 
 -     for i in 0..15
 
 -       sprite = @animation_sprites[i]
 
 -       next if sprite == nil
 
 -       pattern = cell_data[i, 0]
 
 -       if pattern == nil or pattern == -1
 
 -         sprite.visible = false
 
 -         next
 
 -       end
 
 -       if pattern < 100
 
 -         sprite.bitmap = @animation_bitmap1
 
 -       else
 
 -         sprite.bitmap = @animation_bitmap2
 
 -       end
 
 -       sprite.visible = true
 
 -       sprite.src_rect.set(pattern % 5 * 192,
 
 -         pattern % 100 / 5 * 192, 192, 192)
 
 -       if @animation_mirror
 
 -         sprite.x = @animation_ox - cell_data[i, 1] / 2
 
 -         sprite.y = @animation_oy - cell_data[i, 2] / 2
 
 -         sprite.angle = (360 - cell_data[i, 4])
 
 -         sprite.mirror = (cell_data[i, 5] == 0)
 
 -       else
 
 -         sprite.x = @animation_ox + cell_data[i, 1] / 2
 
 -         sprite.y = @animation_oy + cell_data[i, 2] / 2
 
 -         sprite.angle = cell_data[i, 4]
 
 -         sprite.mirror = (cell_data[i, 5] == 1)
 
 -       end
 
 -       sprite.z = self.z + 300
 
 -       sprite.ox = 96
 
 -       sprite.oy = 96
 
 -       sprite.zoom_x = cell_data[i, 3] / 200.0
 
 -       sprite.zoom_y = cell_data[i, 3] / 200.0
 
 -       sprite.opacity = cell_data[i, 6] * self.opacity / 255.0
 
 -       sprite.blend_type = cell_data[i, 7]
 
 -     end
 
 -   end
 
 - end
 
 - #--------------------------------------------------------------
 
 - # Sprite Character
 
 - #--------------------------------------------------------------
 
 - class Sprite_Character < Sprite_Base
 
 -   alias vlad_abs_spchar_update update
 
 -   def initialize(viewport, character = nil)
 
 -     super(viewport)
 
 -     @character = character
 
 -     @balloon_duration = 0
 
 -     @_damage_duration = 0
 
 -     update
 
 -   end
 
 -   def update
 
 -     super
 
 -     if @_damage_duration > 0
 
 -       @_damage_duration -=1
 
 -         @_damage_sprite.x = self.x
 
 -         if @_damage_duration <= 0
 
 -           dispose_damage
 
 -         end
 
 -       end
 
 -       if @character != nil and @character.damage != nil
 
 -       damage(@character.damage, @character.critical)
 
 -       @character.damage = nil
 
 -       @character.critical = false
 
 -     end
 
 -     vlad_abs_spchar_update
 
 -   end
 
 - def damage(value, critical)
 
 -       dispose_damage
 
 -       if value.is_a?(Numeric)
 
 -         damage_string = value.abs.to_s
 
 -       else
 
 -         damage_string = value.to_s
 
 -       end
 
 -       bitmap = Bitmap.new(160, 48)
 
 -       bitmap.font.name = "黑体"
 
 -       bitmap.font.size = 20
 
 -       bitmap.font.italic = true
 
 -       if value.is_a?(Numeric) and value <= 0
 
 -         bitmap.font.color.set(0, 0, 0)
 
 -         bitmap.draw_text(1, 13, 160, 36, "Fallo", 1)
 
 -         bitmap.font.color.set(255, 245, 155)
 
 -         bitmap.draw_text(0, 12, 160, 36, "Fallo", 1)
 
 -       else
 
 -         bitmap.font.color.set(0, 0, 0)
 
 -         bitmap.draw_text(1, 13, 160, 36, damage_string, 1)
 
 -         bitmap.font.color.set(255, 255, 255)
 
 -         bitmap.draw_text(0, 12, 160, 36, damage_string, 1)
 
 -       end
 
 -       if critical
 
 -         bitmap.font.color.set(0, 0, 0)
 
 -         bitmap.draw_text(1, 6, 160, 20, "Critical", 1)
 
 -         bitmap.font.color.set(255, 245, 155)
 
 -         bitmap.draw_text(0, 5, 160, 20, "Critical", 1)
 
 -       end
 
 -       @_damage_sprite = ::Sprite.new(self.viewport)
 
 -       @_damage_sprite.bitmap = bitmap
 
 -       @_damage_sprite.ox = 80
 
 -       @_damage_sprite.oy = 20
 
 -       @_damage_sprite.x = self.x
 
 -       @_damage_sprite.y = self.y - self.oy / 2 - 40
 
 -       @_damage_sprite.z += 99999
 
 -       @_damage_duration = 30
 
 -     end
 
 -     def show_text(string, size=16, color=0)
 
 -       dispose_damage
 
 -       damage_string = string
 
 -       if string.is_a?(Array)
 
 -         array = true
 
 -       else
 
 -         array = false
 
 -       end
 
 -       bitmap = Bitmap.new(160, 48)
 
 -       bitmap.font.name = "Georgia"
 
 -       bitmap.font.size = size
 
 -       bitmap.font.italic = true
 
 -       if array
 
 -         for i in 0..string.size
 
 -           next if damage_string[i] == nil
 
 -           bitmap.font.color.set(96, 96-20, 0) if color == 0
 
 -           bitmap.font.color.set(0, 0, 0) if color != 0 
 
 -           bitmap.draw_text(-1, (12+(16*i)-1)-16, 160, 36, damage_string[i], 1)
 
 -           bitmap.draw_text(+1, (12+(16*i)-1)-16, 160, 36, damage_string[i], 1)
 
 -           bitmap.draw_text(-1, (12+(16*i)+1)-16, 160, 36, damage_string[i], 1)
 
 -           bitmap.draw_text(+1, (12+(16*i)+1)-16, 160, 36, damage_string[i], 1)
 
 -           bitmap.font.color.set(255, 245, 155) if color == 0
 
 -           bitmap.font.color.set(144, 199, 150) if color == 1
 
 -           bitmap.font.color.set(197, 147, 190)if color == 2
 
 -           bitmap.font.color.set(138, 204, 198)if color == 3
 
 -           bitmap.draw_text(0, (12+(16*i))-16, 160, 36, damage_string[i], 1)
 
 -         end
 
 -       else
 
 -         bitmap.font.color.set(96, 96-20, 0) if color == 0
 
 -         bitmap.font.color.set(0, 0, 0) if color != 0 
 
 -         bitmap.draw_text(-1, 12-1, 160, 36, damage_string, 1)
 
 -         bitmap.draw_text(+1, 12-1, 160, 36, damage_string, 1)
 
 -         bitmap.draw_text(-1, 12+1, 160, 36, damage_string, 1)
 
 -         bitmap.draw_text(+1, 12+1, 160, 36, damage_string, 1)
 
 -         bitmap.font.color.set(255, 245, 155) if color == 0
 
 -         bitmap.font.color.set(144, 199, 150) if color == 1
 
 -         bitmap.font.color.set(197, 147, 190)if color == 2
 
 -         bitmap.font.color.set(138, 204, 198)if color == 3
 
 -         bitmap.draw_text(0, 12, 160, 36, damage_string, 1)
 
 -       end
 
 -       @_damage_sprite = ::Sprite.new(self.viewport)
 
 -       @_damage_sprite.bitmap = bitmap
 
 -       @_damage_sprite.ox = 80
 
 -       @_damage_sprite.oy = 20
 
 -       @_damage_sprite.x = self.x
 
 -       @_damage_sprite.y = self.y - self.oy / 2
 
 -       @_damage_sprite.z = 3000
 
 -       @_damage_duration = 30
 
 -     end 
 
 -     def dispose_damage
 
 -     if @_damage_sprite != nil
 
 -       @_damage_sprite.dispose
 
 -       @_damage_sprite = nil
 
 -     end
 
 -   end
 
 - end
 
 -   
 
 - #--------------------------------------------------------------
 
 - # Window Skill
 
 - #--------------------------------------------------------------
 
 - class Scene_Skill
 
 -   alias vlad_abs_sskill_initialize initialize
 
 -   alias vlad_abs_sskill_update update
 
 -   def initialize(actor_index = 0, equip_index = 0)
 
 -     [url=home.php?mod=space&uid=25505]@memory[/url] = Window_Command.new(150, ["確 定 S 鍵 技 能"])
 
 -     @memory.active = false
 
 -     @memory.visible = false
 
 -     @memory.x = (544 - @memory.width) / 2
 
 -     @memory.y = (416 - @memory.height) / 2
 
 -     @memory.z = 1500
 
 -     vlad_abs_sskill_initialize
 
 -   end
 
 - def update
 
 -   update_skill
 
 -   @memory.update if @memory.active
 
 -   return update_memory if @memory.active
 
 -   vlad_abs_sskill_update
 
 - end
 
 - def update_skill
 
 -   for key in Skill_Button.keys
 
 -   if Input.trigger?(key)
 
 -   Sound.play_decision
 
 -   Skill_Button[key] = @skill_window.skill.id
 
 -   @memory.active = @memory.visible = true
 
 -   @skill_window.active = false
 
 - end
 
 - end
 
 - end
 
 -   def update_memory
 
 - if Input.trigger?(Input::C)
 
 -   Sound.play_decision
 
 -   @memory.active = @memory.visible = false
 
 -   @skill_window.active = true
 
 - end
 
 - end
 
 -   def Skill_Button
 
 -     return Skill_Button
 
 -   end
 
 - end
 
  
- #--------------------------------------------------------------
 
 - # FINISH
 
 - #--------------------------------------------------------------
 
  复制代码 |   
 
 
最佳答案
查看完整内容 
基本功能已经实现,占楼了,待优化。
[hr]问:什么时候优化?
答:P叔有时间再来优化,本周太多事情了。你先看看实现效果。 
 
 
 
 
评分
- 
查看全部评分
 
 
 
 
 
 |