Project1

标题: 更新-用最简单的脚本语句实现VX怪物图鉴!!v0.02 [打印本页]

作者: enghao_lim    时间: 2008-3-24 18:34
标题: 更新-用最简单的脚本语句实现VX怪物图鉴!!v0.02
29-3-2008 v0.02
- 修正物品显示小Bug一个,感谢雪流星提供
28-3-2008 v0.01
- 接受小柯的建议,改用上下切换图片与资料
- 因为站上有关Game_Enemy的脚本过多,以防冲突,更改备注方式
- 在敌人的备注里添加:[备注 n]
- n 为要显示的介绍内容
- 里面的备注简体繁体通用,英文也行,为note
- 在怪物列表里添加号数
- 如有任何不明白,请看范例

最近被我姐烦得装了RMVX,可却摆着不用,就顺便弄一个图鉴出来好了。
次脚本的主要目的是要让那些新手知道许多简单的脚本语句就可以完成一些大型脚本,
所以此次的界面与排版等完全没有经过深思,就只是乱排一通。

  1. #===========================================================================
  2. # 一、将想显示的属性设定好,是一个数组,最多六个
  3. # 二、设定不显示的怪物编号
  4. # 四、在数据库里设置备注成为怪物说明
  5. # 三、在事件上使用脚本:$Scene = Scene_EnemyDex.new 进入图鉴
  6. #===========================================================================
  7. $属性显示 = [9,10,11,12,13,14]
  8. $不显示的怪物 = []
  9. #---------------------------------------------------------------------------
  10. # 对Game_Party添加新的定义
  11. #---------------------------------------------------------------------------
  12. class Game_Party
  13.   #-------------------------------------------------------------------------
  14.   # 出示化实例变量
  15.   #-------------------------------------------------------------------------
  16.   attr_accessor :enemy_view
  17.   #-------------------------------------------------------------------------
  18.   # 初始化
  19.   #-------------------------------------------------------------------------
  20.   alias new_initialize initialize
  21.   def initialize
  22.     new_initialize
  23.     @enemy_view = []
  24.     for i in 1...$data_enemies.size
  25.       @enemy_view[i] = 0
  26.     end
  27.   end
  28.   #-------------------------------------------------------------------------
  29.   # 打开图鉴
  30.   #-------------------------------------------------------------------------
  31.   def add_enemy_view(n)
  32.     if n == "all"
  33.       for i in 1...$data_enemies.size
  34.         @enemy_view[i] += 1
  35.       end
  36.     else
  37.       @enemy_view[n] += 1
  38.     end
  39.   end
  40. end

  41. #---------------------------------------------------------------------------
  42. # 新建图鉴窗口
  43. #---------------------------------------------------------------------------
  44. class Window_EnemyDex_Info < Window_Base
  45.   #-------------------------------------------------------------------------
  46.   # 初始化
  47.   #-------------------------------------------------------------------------
  48.   def initialize(id)
  49.     super(0,56,544,360)
  50.     @id = id
  51.     @now_id = 0
  52.     @element = $属性显示
  53.     refresh
  54.   end
  55.   #-------------------------------------------------------------------------
  56.   # 刷新
  57.   #-------------------------------------------------------------------------
  58.   def refresh
  59.     if @now_id != @id
  60.       self.contents.clear
  61.       draw_enemy_name(@id)
  62.       draw_enemy_hp(@id)
  63.       draw_enemy_mp(@id)
  64.       draw_enemy_atk(@id)
  65.       draw_enemy_def(@id)
  66.       draw_enemy_spi(@id)
  67.       draw_enemy_agi(@id)
  68.       draw_enemy_hit(@id)
  69.       draw_enemy_eva(@id)
  70.       draw_enemy_exp(@id)
  71.       draw_enemy_gold(@id)
  72.       draw_enemy_item1(@id)
  73.       draw_enemy_item2(@id)
  74.       draw_enemy_levitate(@id)
  75.       draw_enemy_has_critical(@id)
  76.       draw_enemy_element_ranks(@id)
  77.       draw_enemy_action(@id)
  78.     end
  79.     @now_id = @id
  80.   end
  81.   #-------------------------------------------------------------------------
  82.   # 名字
  83.   #-------------------------------------------------------------------------
  84.   def draw_enemy_name(id)
  85.     self.contents.font.color = Color.new(255,255,0,255)
  86.     self.contents.draw_text(0,0,160,24,$data_enemies[id].name)
  87.   end
  88.   #-------------------------------------------------------------------------
  89.   # 生命
  90.   #-------------------------------------------------------------------------
  91.   def draw_enemy_hp(id)
  92.     self.contents.font.color = system_color
  93.     self.contents.draw_text(0,24,40,24,"HP")
  94.     self.contents.font.color = normal_color
  95.     self.contents.draw_text(40,24,80,24,$data_enemies[id].maxhp)
  96.   end
  97.   #-------------------------------------------------------------------------
  98.   # 精神
  99.   #-------------------------------------------------------------------------
  100.   def draw_enemy_mp(id)
  101.     self.contents.font.color = system_color
  102.     self.contents.draw_text(0,48,40,24,"MP")
  103.     self.contents.font.color = normal_color
  104.     self.contents.draw_text(40,48,80,24,$data_enemies[id].maxmp)
  105.   end
  106.   #-------------------------------------------------------------------------
  107.   # 图像
  108.   #-------------------------------------------------------------------------
  109.   def draw_enemy_picture(id)
  110.     bitmap = Cache.battler($data_enemies[id].battler_name,$data_enemies[id].battler_hue)
  111.     src_rect = Rect.new(0,0,bitmap.width,bitmap.height)
  112.     self.contents.blt(((self.width-32)-bitmap.width)/2,((self.height-32)-bitmap.height)/2,bitmap,src_rect)
  113.   end
  114.   #-------------------------------------------------------------------------
  115.   # 攻击
  116.   #-------------------------------------------------------------------------
  117.   def draw_enemy_atk(id)
  118.     self.contents.font.color = Color.new(255,128,128,255)
  119.     self.contents.draw_text(0,72,60,24,"攻击力")
  120.     self.contents.font.color = normal_color
  121.     self.contents.draw_text(80,72,80,24,$data_enemies[id].atk,2)
  122.   end
  123.   #-------------------------------------------------------------------------
  124.   # 防御
  125.   #-------------------------------------------------------------------------
  126.   def draw_enemy_def(id)
  127.     self.contents.font.color = Color.new(255,128,128,255)
  128.     self.contents.draw_text(0,96,60,24,"防御力")
  129.     self.contents.font.color = normal_color
  130.     self.contents.draw_text(80,96,80,24,$data_enemies[id].def,2)
  131.   end
  132.   #-------------------------------------------------------------------------
  133.   # 精神
  134.   #-------------------------------------------------------------------------
  135.   def draw_enemy_spi(id)
  136.     self.contents.font.color = Color.new(255,128,128,255)
  137.     self.contents.draw_text(0,120,60,24,"精神力")
  138.     self.contents.font.color = normal_color
  139.     self.contents.draw_text(80,120,80,24,$data_enemies[id].spi,2)
  140.   end
  141.   #-------------------------------------------------------------------------
  142.   # 敏捷
  143.   #-------------------------------------------------------------------------
  144.   def draw_enemy_agi(id)
  145.     self.contents.font.color = Color.new(255,128,128,255)
  146.     self.contents.draw_text(0,144,60,24,"敏捷力")
  147.     self.contents.font.color = normal_color
  148.     self.contents.draw_text(80,144,80,24,$data_enemies[id].agi,2)
  149.   end
  150.   #-------------------------------------------------------------------------
  151.   # 命中
  152.   #-------------------------------------------------------------------------
  153.   def draw_enemy_hit(id)
  154.     self.contents.font.color = Color.new(255,128,255,255)
  155.     self.contents.draw_text(0,168,60,24,"命中率")
  156.     self.contents.font.color = normal_color
  157.     self.contents.draw_text(80,168,80,24,$data_enemies[id].hit,2)
  158.   end
  159.   #-------------------------------------------------------------------------
  160.   # 回避
  161.   #-------------------------------------------------------------------------
  162.   def draw_enemy_eva(id)
  163.     self.contents.font.color = Color.new(255,128,255,255)
  164.     self.contents.draw_text(0,192,60,24,"回避率")
  165.     self.contents.font.color = normal_color
  166.     self.contents.draw_text(80,192,80,24,$data_enemies[id].eva,2)
  167.   end
  168.   #-------------------------------------------------------------------------
  169.   # 经验
  170.   #-------------------------------------------------------------------------
  171.   def draw_enemy_exp(id)
  172.     self.contents.font.color = Color.new(240,255,130,255)
  173.     self.contents.draw_text(0,216,60,24,"经验值")
  174.     self.contents.font.color = normal_color
  175.     self.contents.draw_text(80,216,80,24,$data_enemies[id].exp,2)
  176.   end
  177.   #-------------------------------------------------------------------------
  178.   # 金钱
  179.   #-------------------------------------------------------------------------
  180.   def draw_enemy_gold(id)
  181.     self.contents.font.color = Color.new(240,255,130,255)
  182.     self.contents.draw_text(0,240,60,24,"金钱")
  183.     self.contents.font.color = normal_color
  184.     self.contents.draw_text(80,240,80,24,$data_enemies[id].gold,2)
  185.   end
  186.   #-------------------------------------------------------------------------
  187.   # 物品1
  188.   #-------------------------------------------------------------------------
  189.   def draw_enemy_item1(id)
  190.     self.contents.font.color = Color.new(128,255,128,255)
  191.     self.contents.draw_text(0,264,60,24,"物品一")
  192.     self.contents.font.color = normal_color
  193.     case $data_enemies[id].drop_item1.kind
  194.     when 0
  195.       self.contents.draw_text(80,264,80,24,"无",2)
  196.     when 1
  197.       self.contents.draw_text(80,264,80,24,$data_items[$data_enemies[id].drop_item1.item_id].name,2)
  198.     when 2
  199.       self.contents.draw_text(80,264,80,24,$data_weapons[$data_enemies[id].drop_item1.weapon_id].name,2)
  200.     when 3
  201.       self.contents.draw_text(80,264,80,24,$data_armors[$data_enemies[id].drop_item1.armor_id].name,2)
  202.     end
  203.   end
  204.   #-------------------------------------------------------------------------
  205.   # 物品2
  206.   #-------------------------------------------------------------------------
  207.   def draw_enemy_item2(id)
  208.     self.contents.font.color = Color.new(128,255,128,255)
  209.     self.contents.draw_text(0,288,60,24,"物品二")
  210.     self.contents.font.color = normal_color
  211.     case $data_enemies[id].drop_item2.kind
  212.     when 0
  213.       self.contents.draw_text(80,288,80,24,"无",2)
  214.     when 1
  215.       self.contents.draw_text(80,288,80,24,$data_items[$data_enemies[id].drop_item2.item_id].name,2)
  216.     when 2
  217.       self.contents.draw_text(80,288,80,24,$data_weapons[$data_enemies[id].drop_item2.weapon_id].name,2)
  218.     when 3
  219.       self.contents.draw_text(80,288,80,24,$data_armors[$data_enemies[id].drop_item2.armor_id].name,2)
  220.     end
  221.   end
  222.   #-------------------------------------------------------------------------
  223.   # 空中
  224.   #-------------------------------------------------------------------------
  225.   def draw_enemy_levitate(id)
  226.     self.contents.font.color = $data_enemies[id].levitate == true ? Color.new(255,255,0,255) : Color.new(150,150,150,255)
  227.     self.contents.draw_text(200,264,160,24,"配置在空中")
  228.   end
  229.   #-------------------------------------------------------------------------
  230.   # 重击
  231.   #-------------------------------------------------------------------------
  232.   def draw_enemy_has_critical(id)
  233.     self.contents.font.color = $data_enemies[id].has_critical == true ? Color.new(255,255,0,255) : Color.new(150,150,150,255)
  234.     self.contents.draw_text(200,288,160,24,"有会心一击")
  235.   end
  236.   #-------------------------------------------------------------------------
  237.   # 属性
  238.   #-------------------------------------------------------------------------
  239.   def draw_enemy_element_ranks(id)
  240.     self.contents.font.color = Color.new(255,180,255,255)
  241.     self.contents.draw_text(380,0,60,24,"属性")
  242.     self.contents.font.color = normal_color
  243.     x = 0
  244.     for i in @element
  245.       self.contents.draw_text(380,x*48+24,80,24,$data_system.elements[i])
  246.       case $data_enemies[id].element_ranks[i]
  247.       when 1
  248.         percent = "200%"
  249.         width = 100
  250.         c1 = Color.new(255,255,64,255)
  251.         c2 = Color.new(255,128,128,255)
  252.       when 2
  253.         percent = "150%"
  254.         width = 75
  255.         c1 = Color.new(255,255,64,255)
  256.         c2 = Color.new(255,128,128,255)
  257.       when 3
  258.         percent = "100%"
  259.         width = 50
  260.         c1 = Color.new(255,255,64,255)
  261.         c2 = Color.new(128,255,128,255)
  262.       when 4
  263.         percent = "50%"
  264.         width = 25
  265.         c1 = Color.new(255,128,128,255)
  266.         c2 = Color.new(255,255,64,255)
  267.       when 5
  268.         percent = "0%"
  269.         width = 0
  270.         c1 = Color.new(255,128,128,255)
  271.         c2 = Color.new(255,255,64,255)
  272.       when 6
  273.         percent = "-100%"
  274.         width = 100
  275.         c1 = Color.new(255,128,255,255)
  276.         c2 = Color.new(128,255,128,255)
  277.       end
  278.       a = 380
  279.       b = 6
  280.       for i in 0...12
  281.         self.contents.fill_rect(a,x*48+48+b,100,1,Color.new(0,0,0,200))
  282.         a += 0.5
  283.         b += 1
  284.       end
  285.       self.contents.gradient_fill_rect(380,x*48+48+6,width,1,c1,c2)
  286.       self.contents.gradient_fill_rect(380.5,x*48+48+7,width,1,c1,c2)
  287.       self.contents.gradient_fill_rect(381,x*48+48+8,width,1,c1,c2)
  288.       self.contents.gradient_fill_rect(381.5,x*48+48+9,width,1,c1,c2)
  289.       self.contents.gradient_fill_rect(382,x*48+48+10,width,1,c1,c2)
  290.       self.contents.gradient_fill_rect(382.5,x*48+48+11,width,1,c1,c2)
  291.       self.contents.gradient_fill_rect(383,x*48+48+12,width,1,c1,c2)
  292.       self.contents.gradient_fill_rect(383.5,x*48+48+13,width,1,c1,c2)
  293.       self.contents.gradient_fill_rect(384,x*48+48+14,width,1,c1,c2)
  294.       self.contents.gradient_fill_rect(384.5,x*48+48+15,width,1,c1,c2)
  295.       self.contents.gradient_fill_rect(385,x*48+48+16,width,1,c1,c2)
  296.       self.contents.gradient_fill_rect(385.5,x*48+48+17,width,1,c1,c2)
  297.       self.contents.draw_text(380,x*48+40,100,24,percent,2)
  298.       x += 1
  299.       break if x >= 6
  300.     end
  301.   end
  302.   #-------------------------------------------------------------------------
  303.   # 行动
  304.   #-------------------------------------------------------------------------
  305.   def draw_enemy_action(id)
  306.     self.contents.font.color = Color.new(0,255,255,255)
  307.     self.contents.draw_text(200,0,60,24,"行动")
  308.     self.contents.font.color = normal_color
  309.     x = 1
  310.     for action in $data_enemies[id].actions
  311.       if action.kind == 0
  312.         case action.basic
  313.         when 0
  314.           self.contents.draw_text(200,x*24,160,24,"#{x}. "+"攻击")
  315.         when 1
  316.           self.contents.draw_text(200,x*24,160,24,"#{x}. "+"防御")
  317.         when 2
  318.           self.contents.draw_text(200,x*24,160,24,"#{x}. "+"逃跑")
  319.         when 3
  320.           self.contents.draw_text(200,x*24,160,24,"#{x}. "+"待机")
  321.         end
  322.       else
  323.         self.contents.draw_text(200,x*24,160,24,"#{x}. "+$data_skills[action.skill_id].name)
  324.       end
  325.       x += 1
  326.       break if x >= 11
  327.     end
  328.   end
  329. end

  330. #---------------------------------------------------------------------------
  331. # 新建图鉴窗口
  332. #---------------------------------------------------------------------------
  333. class Window_EnemyDex_Intro < Window_Base
  334.   #-------------------------------------------------------------------------
  335.   # 初始化
  336.   #-------------------------------------------------------------------------
  337.   def initialize(id)
  338.     super(0,56,544,360)
  339.     @id = id
  340.     @now_id = 0
  341.     refresh
  342.   end
  343.   #-------------------------------------------------------------------------
  344.   # 刷新
  345.   #-------------------------------------------------------------------------
  346.   def refresh
  347.     if @now_id != @id
  348.       self.contents.clear
  349.       draw_enemy_picture(@id)
  350.     end
  351.     @now_id = @id
  352.   end
  353.   #-------------------------------------------------------------------------
  354.   # 图像
  355.   #-------------------------------------------------------------------------
  356.   def draw_enemy_picture(id)
  357.     bitmap = Cache.battler($data_enemies[id].battler_name,$data_enemies[id].battler_hue)
  358.     src_rect = Rect.new(0,0,bitmap.width,bitmap.height)
  359.     self.contents.blt(((self.width-32)-bitmap.width)/2,((self.height-32)-bitmap.height)/2,bitmap,src_rect)
  360.   end
  361. end

  362. #---------------------------------------------------------------------------
  363. # 选择窗口
  364. #---------------------------------------------------------------------------
  365. class Window_EnemyDex < Window_Selectable
  366.   #-------------------------------------------------------------------------
  367.   # 初始化
  368.   #-------------------------------------------------------------------------
  369.   def initialize
  370.     super(0,56,544,360)
  371.     @column_max = 2
  372.     self.index = 0
  373.     refresh
  374.   end
  375.   #-------------------------------------------------------------------------
  376.   # 获取敌人
  377.   #-------------------------------------------------------------------------
  378.   def enemy
  379.     return @data[self.index]
  380.   end
  381.   #-------------------------------------------------------------------------
  382.   # 刷新
  383.   #-------------------------------------------------------------------------
  384.   def refresh
  385.     @data = []
  386.     for i in 1...$data_enemies.size
  387.       if !$不显示的怪物.include?(i)
  388.         @data.push($data_enemies[i])
  389.       end
  390.     end
  391.     @item_max = @data.size
  392.     create_contents
  393.     for i in 0...@item_max
  394.       draw_item(i)
  395.     end
  396.   end
  397.   #-------------------------------------------------------------------------
  398.   # 显示
  399.   #-------------------------------------------------------------------------
  400.   def draw_item(index)
  401.     rect = item_rect(index)
  402.     self.contents.clear_rect(rect)
  403.     enemy = @data[index]
  404.     if $game_party.enemy_view[enemy.id] > 0
  405.       rect.width -= 4
  406.       self.contents.draw_text(rect.x+4,rect.y,(self.width-32)/2,24,"#{index+1}. " + enemy.name)
  407.     else
  408.       rect.width -= 4
  409.       self.contents.draw_text(rect.x+4,rect.y,(self.width-32)/2,24,"----------------")
  410.     end
  411.   end
  412.   #-------------------------------------------------------------------------
  413.   # 帮助
  414.   #-------------------------------------------------------------------------
  415.   def update_help
  416.     view = $game_party.enemy_view[enemy.id]
  417.     @help_window.set_text(view > 0 ? "编号 #{enemy.id}" : "----------------")
  418.   end
  419. end

  420. #---------------------------------------------------------------------------
  421. # 图鉴
  422. #---------------------------------------------------------------------------
  423. class Scene_EnemyDex < Scene_Base
  424.   #-------------------------------------------------------------------------
  425.   # 处理
  426.   #-------------------------------------------------------------------------
  427.   def start
  428.     create_menu_background
  429.     @help_window = Window_Help.new
  430.     @enemydex_window = Window_EnemyDex.new
  431.     @enemydex_window.help_window = @help_window
  432.     @enemydex_window.active = true
  433.     @enemydex_info_window = Window_EnemyDex_Info.new(@enemydex_window.enemy.id)
  434.     @enemydex_info_window.visible = false
  435.     @enemydex_intro_window = Window_EnemyDex_Intro.new(@enemydex_window.enemy.id)
  436.     @enemydex_intro_window.visible = false
  437.   end
  438.   #--------------------------------------------------------------------------
  439.   # ● 结束处理
  440.   #--------------------------------------------------------------------------
  441.   def terminate
  442.     super
  443.     dispose_menu_background
  444.     @help_window.dispose
  445.     @enemydex_window.dispose
  446.     @enemydex_info_window.dispose
  447.     @enemydex_intro_window.dispose
  448.   end
  449.   #--------------------------------------------------------------------------
  450.   # ● 更新画面
  451.   #--------------------------------------------------------------------------
  452.   def update
  453.     super
  454.     update_menu_background
  455.     @help_window.update
  456.     @enemydex_window.update
  457.     @enemydex_info_window.update
  458.     @enemydex_intro_window.update
  459.     return select_enemy if @enemydex_window.active
  460.     return in_info if @enemydex_info_window.visible
  461.     return in_intro if @enemydex_intro_window.visible
  462.   end
  463.   #--------------------------------------------------------------------------
  464.   # 选择敌人
  465.   #--------------------------------------------------------------------------
  466.   def select_enemy
  467.     if Input.trigger?(Input::B)
  468.       Sound.play_cancel
  469.       $scene = Scene_Map.new
  470.     end
  471.     if Input.trigger?(Input::C)
  472.       if $game_party.enemy_view[@enemydex_window.enemy.id] > 0
  473.         Sound.play_decision
  474.         @enemydex_window.active = false
  475.         @enemydex_window.visible = false
  476.         @enemydex_intro_window = Window_EnemyDex_Intro.new(@enemydex_window.enemy.id)
  477.         @enemydex_intro_window.visible = true
  478.       else
  479.         Sound.play_buzzer
  480.       end
  481.     end
  482.   end
  483.   #--------------------------------------------------------------------------
  484.   # 详情察看
  485.   #--------------------------------------------------------------------------
  486.   def in_info
  487.     view = $game_party.enemy_view[@enemydex_window.enemy.id]
  488.     @help_window.set_text("发现数:#{view}")
  489.     if Input.trigger?(Input::UP) or Input.trigger?(Input::DOWN)
  490.       @enemydex_window.visible = false
  491.       @enemydex_intro_window = Window_EnemyDex_Intro.new(@enemydex_window.enemy.id)
  492.       @enemydex_intro_window.visible = true
  493.       @enemydex_info_window.visible = false
  494.     end
  495.     if Input.trigger?(Input::B) or Input.trigger?(Input::C)
  496.       Sound.play_cancel
  497.       @enemydex_window.visible = true
  498.       @enemydex_window.active = true
  499.       @enemydex_info_window.visible = false
  500.       @help_window.set_text(view > 0 ? "编号 #{@enemydex_window.enemy.id}" : "----------------")
  501.     end
  502.   end
  503.   #--------------------------------------------------------------------------
  504.   # 详情察看
  505.   #--------------------------------------------------------------------------
  506.   def in_intro
  507.     @b = ""
  508.     text = @enemydex_window.enemy.note.dup
  509.     text.split(/[\r\n]+/).each { |line|
  510.     if line =~ /\[(note|备注|備註) \w+\]/
  511.       a = line.split(/ /)[1]
  512.       while ((c = a.slice!(/./m)) != nil)
  513.         @b += c if c != "]"
  514.       end
  515.     end;}
  516.     @b = @b != "" ? @b : "资料不详"
  517.     @help_window.set_text(@b)
  518.     if Input.trigger?(Input::UP) or Input.trigger?(Input::DOWN)
  519.       @enemydex_window.visible = false
  520.       @enemydex_info_window = Window_EnemyDex_Info.new(@enemydex_window.enemy.id)
  521.       @enemydex_info_window.visible = true
  522.       @enemydex_intro_window.visible = false
  523.     end
  524.     if Input.trigger?(Input::B) or Input.trigger?(Input::C)
  525.       Sound.play_cancel
  526.       @enemydex_window.visible = true
  527.       @enemydex_window.active = true
  528.       @enemydex_intro_window.visible = false
  529.       view = $game_party.enemy_view[@enemydex_window.enemy.id]
  530.       @help_window.set_text(view > 0 ? "编号 #{@enemydex_window.enemy.id}" : "----------------")
  531.     end
  532.   end
  533. end

  534. #----------------------------------------------------------------------------
  535. # 追加定义
  536. #----------------------------------------------------------------------------
  537. class Scene_Battle
  538.   alias new_battle_end battle_end
  539.   def battle_end(result)
  540.     if result == 0
  541.       for enemy in $game_troop.members
  542.         $game_party.add_enemy_view(enemy.enemy_id)
  543.       end
  544.     end
  545.     new_battle_end(result)
  546.   end
  547. end
复制代码




v0.00 范例下载:Project 02 - EnemyDex v0.00.rar

v0.01 范例下载:Project 02 - EnemyDex v0.01.rar

v0.02 范例下载:Project 02 - EnemyDex v0.02.rar

作者: 無聊啲尐柒    时间: 2008-3-24 19:57
提示: 作者被禁止或删除 内容自动屏蔽
作者: 030428    时间: 2008-3-24 20:30
提示: 作者被禁止或删除 内容自动屏蔽
作者: 小幽的马甲    时间: 2008-3-25 01:32
小lim也开始研究vx了么……我拿去强化下- -
作者: 越前リョーマ    时间: 2008-3-25 01:45
以下引用小幽的马甲于2008-3-24 17:32:43的发言:

小lim也开始研究vx了么……我拿去强化下- -

改成直接显示资料和图片吧……

然后按上下转换。
作者: 小幽的马甲    时间: 2008-3-25 02:42
修正一下:
用$Scene = Scene_EnemyDex 调用会有点问题。
貌似应该是$scene = Scene_EnemyDex.new吧= =
作者: enghao_lim    时间: 2008-3-25 04:29
以下引用小幽的马甲于2008-3-24 18:42:02的发言:

修正一下:
用$Scene = Scene_EnemyDex 调用会有点问题。
貌似应该是$scene = Scene_EnemyDex.new吧= =

抱歉,平时写脚本是不写注释的,更正一下。
作者: 火鸡三毛老大    时间: 2008-3-25 06:25
刚才在别的贴链接过来了  还不错 收下了
作者: 雪流星    时间: 2008-3-26 15:24
嘿嘿,及时雨,我正好拿来测试我的敌人等级脚本
作者: 风雪优游    时间: 2008-3-27 06:15
以下引用snstar2006于2008-3-26 7:24:04的发言:

嘿嘿,及时雨,我正好拿来测试我的敌人等级脚本


会不会冲突啊
作者: enghao_lim    时间: 2008-3-28 05:44
屏蔽

作者: 雪流星    时间: 2008-3-28 18:07
BUG报告!

第215行 描绘掉落物品2的地方
drop_item2 写成了drop_item1
作者: enghao_lim    时间: 2008-3-28 23:51
以下引用snstar2006于2008-3-28 10:07:51的发言:
BUG报告!

第215行 描绘掉落物品2的地方
drop_item2 写成了drop_item1
  #-------------------------------------------------------------------------
  # 物品2
  #-------------------------------------------------------------------------
  def draw_enemy_item2(id)
    self.contents.font.color = Color.new(128,255,128,255)
    self.contents.draw_text(0,288,60,24,"物品二")
    self.contents.font.color = normal_color
    case $data_enemies[id].drop_item1.kind
    when 0
      self.contents.draw_text(80,288,80,24,"无",2)
    when 1
      self.contents.draw_text(80,288,80,24,$data_items[$data_enemies[id].drop_item2.item_id].name,2)

    when 2
      self.contents.draw_text(80,288,80,24,$data_weapons[$data_enemies[id].drop_item2.weapon_id].name,2)
    when 3
      self.contents.draw_text(80,288,80,24,$data_armors[$data_enemies[id].drop_item2.armor_id].name,2)
    end
  end

根据检查,并没有发现相关错误,请求再次确定错误行数与其它信息。
作者: enghao_lim    时间: 2008-3-29 02:41
28-3-2008 v0.01 更新完毕。
作者: 雪流星    时间: 2008-3-29 03:47
{/gg}{/gg}

报告行数错误
请载往上几行看
是在case那行
#-------------------------------------------------------------------------
# 物品2
#-------------------------------------------------------------------------
def draw_enemy_item2(id)
   self.contents.font.color = Color.new(128,255,128,255)
   self.contents.draw_text(0,288,60,24,"物品二")
   self.contents.font.color = normal_color
   case $data_enemies[id].drop_item1.kind
   when 0
     self.contents.draw_text(80,288,80,24,"无",2)
   when 1
     self.contents.draw_text(80,288,80,24,$data_items[$data_enemies[id].drop_item2.item_id].name,2)
   when 2
     self.contents.draw_text(80,288,80,24,$data_weapons[$data_enemies[id].drop_item2.weapon_id].name,2)
   when 3
     self.contents.draw_text(80,288,80,24,$data_armors[$data_enemies[id].drop_item2.armor_id].name,2)
   end
end

作者: 越前リョーマ    时间: 2008-3-29 05:58
看了下……

感觉排版比较奇怪……
作者: enghao_lim    时间: 2008-3-29 08:27
以下引用snstar2006于2008-3-28 19:47:44的发言:
报告行数错误
请载往上几行看
是在case那行

OK,fixed bug 完毕
以下引用越前リョーマ于2008-3-28 21:58:27的发言:
看了下……
感觉排版比较奇怪……

不好意思,天生排版就很烂,所以已经为自己找好借口了。
次脚本的主要目的是要让那些新手知道许多简单的脚本语句就可以完成一些大型脚本,
所以此次的界面排版等完全没有经过深思,就只是乱排一通

作者: 风雪优游    时间: 2008-3-30 01:57
继续期待更新~~~期待本脚本越来越完美~~~

作者: 小幽的马甲    时间: 2008-3-30 03:16
其实怪物图鉴想想确实也不难地说……主要就是调坐标之类的苦力活……
作者: enghao_lim    时间: 2008-3-30 23:30
以下引用小幽的马甲于2008-3-29 19:16:49的发言:
其实怪物图鉴想想确实也不难地说……主要就是调坐标之类的苦力活……

所以说是:用最简单的脚本语句实现大型脚本。
作者: 风雪优游    时间: 2008-3-30 23:58
- 接受小柯的建议,改用上下切换图片与资料

其实我很喜欢原来的方式= =

话说这个方式最好加一个提示语"按下翻页"什么的....不然有些人一辈子都只知道看图片了= =|||
作者: 越前リョーマ    时间: 2008-4-1 02:35
以下引用风雪优游于2008-3-30 15:58:18的发言:


- 接受小柯的建议,改用上下切换图片与资料

其实我很喜欢原来的方式= =

话说这个方式最好加一个提示语"按下翻页"什么的....不然有些人一辈子都只知道看图片了= =|||

其实我的意思是……

直接显示图片和资料,然后按上下翻页的……
作者: 雪流星    时间: 2008-4-1 05:16
其实还可以这样:

图片不动
其他资料按键翻页
作者: 御灵    时间: 2008-8-8 08:19
http://rpg.blue/web/htm/news1144.htm
vip+2
作者: 火月    时间: 2008-8-14 04:33
提示: 作者被禁止或删除 内容自动屏蔽
作者: zianyygy12    时间: 2008-9-9 09:59
怎么看人物状态是显示的是怪物图啊·
作者: 梦噬    时间: 2009-7-20 21:18
收下试试..冲突就不要了嘿嘿
作者: huahuapro    时间: 2010-9-9 10:04
能不能把这个改成一个对事件,地点等等的描述系统呢?
超级感谢啊,我是脚本小白!正需要这个!
作者: y3333269    时间: 2010-9-9 20:15
哇,强大啊,界面挺简洁。




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