Project1

标题: 求一个xp的敌人血条脚本和商店脚本 [打印本页]

作者: 羽灬翼    时间: 2014-8-6 19:13
标题: 求一个xp的敌人血条脚本和商店脚本
Rt  求一个xp的敌人血条脚本和商店脚本


{:2_264:} {:2_264:}

图书管理好像是VX的。。。。

VX的脚本XP用不了吧?


作者: 哆啦溯    时间: 2014-8-6 20:21
RUBY 代码复制
  1. #==============================================================================
  2. # 本脚本来自[url]www.66RPG.com[/url],使用和转载请保留此信息
  3. #==============================================================================  
  4. #==============================================================================
  5. # ■ Window_Help
  6. #------------------------------------------------------------------------------
  7. # 重新定义的内容,可以显示敌人的HP\MP百分比
  8. # 你可以改脚本的开头部分定义生命、精神描述词。只和敌人描述有关,可随意修改
  9. #==============================================================================
  10. class Window_Help < Window_Base
  11.   def set_enemy(actor)   
  12.     #--------------------------------------------------------------------
  13.     # 在这里修改描述文字,比如@生命描述词="敌人生命"
  14.     #--------------------------------------------------------------------
  15.  
  16.     @生命描述词 = $data_system.words.hp
  17.     @精神描述词 = $data_system.words.sp
  18.  
  19.     #--------------------------------------------------------------------
  20.     #--------------------------------------------------------------------
  21.     self.contents.clear
  22.     draw_actor_name(actor, 4, 0)
  23.     draw_actor_state(actor, 140, 0)
  24.     carol3_draw_hp_bar(actor, 284, 12)
  25.     carol3_draw_sp_bar(actor, 460, 12)
  26.     @text = nil
  27.     self.visible = true
  28.   end  
  29.   def carol3_draw_hp_bar(actor, x, y, width = 128, height = 14) #宽度可调
  30.     w = width * actor.hp / [actor.maxhp,1].max
  31.     hp_color_1 = Color.new(255, 0, 0, 192)  
  32.     hp_color_2 = Color.new(255, 255, 0, 192)  
  33.     self.contents.fill_rect(x+8, y+4, width, (height/4).floor, Color.new(0, 0, 0, 128))  
  34.     draw_line(x, y, x + w, y, hp_color_1, (height/4).floor, hp_color_2)  
  35.     x -= 1  
  36.     y += (height/4).floor  
  37.     self.contents.fill_rect(x+8, y+4, width, (height/4).ceil , Color.new(0, 0, 0, 128))  
  38.     draw_line(x, y, x + w, y, hp_color_1, (height/4).ceil , hp_color_2)  
  39.     x -= 1  
  40.     y += (height/4).ceil  
  41.     self.contents.fill_rect(x+8, y+4, width, (height/4).ceil , Color.new(0, 0, 0, 128))  
  42.     draw_line(x, y, x + w, y, hp_color_1, (height/4).ceil , hp_color_2)  
  43.     x -= 1  
  44.     y += (height/4).ceil  
  45.     self.contents.fill_rect(x+8, y+4, width, (height/4).floor, Color.new(0, 0, 0, 128))  
  46.     draw_line(x, y, x + w, y, hp_color_1, (height/4).floor, hp_color_2)  
  47.     self.contents.font.color = Color.new(0,0,0,255)
  48.     self.contents.draw_text(x+2,-3,128,32,@生命描述词,1)
  49.     self.contents.font.color = Color.new(255,255,255,255)
  50.     self.contents.draw_text(x,-4,128,32,@生命描述词,1)
  51.   end  
  52.   def carol3_draw_sp_bar(actor, x, y, width = 128, height=14)
  53.     w = width * actor.sp / [actor.maxsp,1].max  
  54.     hp_color_1 = Color.new( 0, 0, 255, 192)  
  55.     hp_color_2 = Color.new( 0, 255, 255, 192)  
  56.     self.contents.fill_rect(x+8, y+4, width, (height/4).floor, Color.new(0, 0, 0, 128))  
  57.     draw_line(x, y, x + w, y, hp_color_1, (height/4).floor, hp_color_2)  
  58.     x -= 1  
  59.     y += (height/4).floor  
  60.     self.contents.fill_rect(x+8, y+4, width, (height/4).ceil , Color.new(0, 0, 0, 128))  
  61.     draw_line(x, y, x + w, y, hp_color_1, (height/4).ceil , hp_color_2)  
  62.     x -= 1  
  63.     y += (height/4).ceil  
  64.     self.contents.fill_rect(x+8, y+4, width, (height/4).ceil , Color.new(0, 0, 0, 128))  
  65.     draw_line(x, y, x + w, y, hp_color_1, (height/4).ceil , hp_color_2)  
  66.     x -= 1  
  67.     y += (height/4).ceil  
  68.     self.contents.fill_rect(x+8, y+4, width, (height/4).floor, Color.new(0, 0, 0, 128))  
  69.     draw_line(x, y, x + w, y, hp_color_1, (height/4).floor, hp_color_2)  
  70.     self.contents.font.color = Color.new(0,0,0,255)
  71.     self.contents.draw_text(x+2,-3,128,32,@精神描述词,1)
  72.     self.contents.font.color = Color.new(255,255,255,255)
  73.     self.contents.draw_text(x,-4,128,32,@精神描述词,1)
  74.   end
  75.   #--------------------------------------------------------------------------  
  76.   # ● ライン描画 by 桜雅 在土  
  77.   #--------------------------------------------------------------------------  
  78.   def draw_line(start_x, start_y, end_x, end_y, start_color, width = 1, end_color = start_color)  
  79.     # 描写距離の計算。大きめに直角時の長さ。  
  80.     distance = (start_x - end_x).abs + (start_y - end_y).abs  
  81.     # 描写開始  
  82.     if end_color == start_color  
  83.       for i in 1..distance  
  84.         x = (start_x + 1.0 * (end_x - start_x) * i / distance).to_i  
  85.         y = (start_y + 1.0 * (end_y - start_y) * i / distance).to_i  
  86.         if width == 1  
  87.           self.contents.set_pixel(x, y, start_color)  
  88.         else  
  89.           self.contents.fill_rect(x, y, width, width, start_color)  
  90.         end  
  91.       end  
  92.     else  
  93.       for i in 1..distance  
  94.         x = (start_x + 1.0 * (end_x - start_x) * i / distance).to_i  
  95.         y = (start_y + 1.0 * (end_y - start_y) * i / distance).to_i  
  96.         r = start_color.red * (distance-i)/distance + end_color.red * i/distance  
  97.         g = start_color.green * (distance-i)/distance + end_color.green * i/distance  
  98.         b = start_color.blue * (distance-i)/distance + end_color.blue * i/distance  
  99.         a = start_color.alpha * (distance-i)/distance + end_color.alpha * i/distance  
  100.         if width == 1  
  101.           self.contents.set_pixel(x, y, Color.new(r, g, b, a))  
  102.         else  
  103.           self.contents.fill_rect(x, y, width, width, Color.new(r, g, b, a))  
  104.         end  
  105.       end  
  106.     end  
  107.   end  
  108. end
  109. #==============================================================================
  110. # 本脚本来自[url]www.66RPG.com[/url],使用和转载请保留此信息
  111. #==============================================================================

作者: 573932914    时间: 2014-8-6 23:00
敌人血条搜索一下就有,商店是什么商店
作者: 羽灬翼    时间: 2014-8-7 12:41
哆啦溯 发表于 2014-8-6 20:21
#==============================================================================
# 本脚本来自www.66R ...

就类似与这样的http://rpg.blue/thread-154915-1-1.html   不过这个XP好像不能用》?
作者: 羽灬翼    时间: 2014-8-7 12:42
573932914 发表于 2014-8-6 23:00
敌人血条搜索一下就有,商店是什么商店

就类似与这样的http://rpg.blue/thread-154915-1-1.html   不过这个XP好像不能用》?
作者: 哆啦溯    时间: 2014-8-7 15:30
  1. #==============================================================================
  2. # ■ Window_ShopStatus
  3. #------------------------------------------------------------------------------
  4. #  商店画面、显示物品所持数与角色装备的窗口。
  5. #==============================================================================
  6. class Window_ShopStatus < Window_Base
  7.   #--------------------------------------------------------------------------
  8.   # ● 初始化对像
  9.   #--------------------------------------------------------------------------
  10.   def initialize
  11.     super(368, 128, 272, 352)
  12.     self.contents = Bitmap.new(width - 32, height - 32)
  13.     self.contents.font.size = 16
  14.     @item = nil
  15.     refresh
  16.   end
  17.   #--------------------------------------------------------------------------
  18.   # ● 刷新
  19.   #--------------------------------------------------------------------------
  20.   def refresh
  21.     self.contents.clear
  22.     if @item == nil
  23.       return
  24.     end
  25.     case @item
  26.     when RPG::Item
  27.       number = $game_party.item_number(@item.id)
  28.     when RPG::Weapon
  29.       number = $game_party.weapon_number(@item.id)
  30.     when RPG::Armor
  31.       number = $game_party.armor_number(@item.id)
  32.     end
  33.     self.contents.font.color = system_color
  34.     self.contents.draw_text(4, 0, 200, 32, "所持数")
  35.     self.contents.font.color = normal_color
  36.     self.contents.draw_text(204, 0, 32, 32, number.to_s, 2)
  37.     if @item.is_a?(RPG::Item)
  38.       return
  39.     end
  40.     # 添加装备品信息
  41.     for i in 0...$game_party.actors.size
  42.       # 获取角色
  43.       actor = $game_party.actors[i]
  44.       # 可以装备为普通文字颜色、不能装备设置为无效文字颜色
  45.       if actor.equippable?(@item)
  46.         self.contents.font.color = normal_color
  47.       else
  48.         self.contents.font.color = disabled_color
  49.       end
  50.       # 描绘角色名字
  51.       j = 70
  52.       self.contents.draw_text(0, 32 + j * i, 120, 32, actor.name)
  53.       # 获取当前的装备品
  54.       if @item.is_a?(RPG::Weapon)
  55.         item1 = $data_weapons[actor.weapon_id]
  56.       elsif @item.kind == 0
  57.         item1 = $data_armors[actor.armor1_id]
  58.       elsif @item.kind == 1
  59.         item1 = $data_armors[actor.armor2_id]
  60.       elsif @item.kind == 2
  61.         item1 = $data_armors[actor.armor3_id]
  62.       else
  63.         item1 = $data_armors[actor.armor4_id]
  64.       end
  65.       # 可以装备的情况
  66.       #if actor.equippable?(@item)
  67.       # 武器的情况
  68.       i += 1
  69.       if @item.is_a?(RPG::Weapon)
  70.         atk1 = item1 != nil ? item1.atk : 0
  71.         atk2 = @item != nil ? @item.atk : 0
  72.            
  73.         pdef1 = item1 != nil ? item1.pdef : 0
  74.         pdef2 = @item != nil ? @item.pdef : 0
  75.            
  76.         str1 = item1 != nil ? item1.str_plus : 0
  77.         str2 = @item != nil ? @item.str_plus : 0
  78.            
  79.         dex1 = item1 != nil ? item1.dex_plus : 0
  80.         dex2 = @item != nil ? @item.dex_plus : 0
  81.            
  82.         agi1 = item1 != nil ? item1.agi_plus : 0
  83.         agi2 = @item != nil ? @item.agi_plus : 0
  84.            
  85.         int1 = item1 != nil ? item1.int_plus : 0
  86.         int2 = @item != nil ? @item.int_plus : 0
  87.          
  88.         [url=home.php?mod=space&uid=101599]@atk[/url] = atk2 - atk1
  89.         @str = str2 - str1
  90.         @dex = dex2 - dex1
  91.         [url=home.php?mod=space&uid=6136]@agi[/url] = agi2 - agi1
  92.         @int = int2 - int1
  93.         @pdef = pdef2 - pdef1
  94.          
  95.         x = -16
  96.         self.contents.draw_text(80*0,        x+j * i, 112, 32,"攻击",0)
  97.         self.contents.draw_text(80*1,        x+j * i, 112, 32,"力量",0)
  98.         self.contents.draw_text(80*2,        x+j * i, 112, 32,"速度",0)
  99.         self.contents.draw_text(80*0,        x+j * i+16, 112, 32,"敏捷",0)
  100.         self.contents.draw_text(80*1,        x+j * i+16, 112, 32,"魔力",0)
  101.         self.contents.draw_text(80*2,        x+j * i+16, 112, 32,"防御",0)
  102.          
  103.         #---------------------------------------------------------------------
  104.         q=40-10
  105.         if atk2 >= atk1
  106.           self.contents.font.color = Color.new(159,251,162,255)
  107.           self.contents.draw_text(80*0+q,      x+j * i, 112, 32,"↑",0)
  108.         else
  109.           self.contents.font.color = Color.new(255,0,0,255)
  110.           self.contents.draw_text(80*0+q,       x+j * i, 112, 32,"↓",0)
  111.         end
  112.         #---------------------------------------------------------------------
  113.         if str2 >= str1
  114.           self.contents.font.color = Color.new(159,251,162,255)
  115.           self.contents.draw_text(80*1+q,    x+j * i, 112, 32,"↑",0)
  116.         else
  117.           self.contents.font.color = Color.new(255,0,0,255)
  118.           self.contents.draw_text(80*1+q,    x+j * i, 112, 32,"↓",0)
  119.         end
  120.         #---------------------------------------------------------------------
  121.         if dex2 >= dex1
  122.           self.contents.font.color = Color.new(159,251,162,255)
  123.           self.contents.draw_text(80*2+q,    x+j * i, 112, 32,"↑",0)
  124.         else
  125.           self.contents.font.color = Color.new(255,0,0,255)
  126.           self.contents.draw_text(80*2+q,    x+j * i, 112, 32,"↓",0)
  127.         end
  128.       
  129.         #---------------------------------------------------------------------
  130.         if agi2 >= agi1
  131.           self.contents.font.color = Color.new(159,251,162,255)
  132.           self.contents.draw_text(80*0+q,       x+j * i+16, 112, 32,"↑",0)
  133.         else
  134.           self.contents.font.color = Color.new(255,0,0,255)
  135.           self.contents.draw_text(80*0+q,       x+j * i+16, 112, 32,"↓",0)
  136.         end
  137.         #---------------------------------------------------------------------
  138.         if int2 >= int1
  139.           self.contents.font.color = Color.new(159,251,162,255)
  140.           self.contents.draw_text(80*1+q,       x+j * i+16, 112, 32,"↑",0)
  141.         else
  142.           self.contents.font.color = Color.new(255,0,0,255)
  143.           self.contents.draw_text(80*1+q,       x+j * i+16, 112, 32,"↓",0)
  144.         end
  145.         #---------------------------------------------------------------------
  146.         if pdef2 >= pdef1
  147.           self.contents.font.color = Color.new(159,251,162,255)
  148.           self.contents.draw_text(80*2+q,       x+j * i+16, 112, 32,"↑",0)
  149.         else
  150.           self.contents.font.color = Color.new(255,0,0,255)
  151.           self.contents.draw_text(80*2+q,       x+j * i+16, 112, 32,"↓",0)
  152.         end
  153.          
  154.         #---------------------------------------------------------------------
  155.         self.contents.font.color = Color.new(159,251,162,255)
  156.         q=50
  157.         self.contents.draw_text(80*0+q,    x+j * i, 112, 32,@atk.abs.to_s,0)
  158.         self.contents.draw_text(80*1+q,    x+j * i, 112, 32,@str.abs.to_s,0)
  159.         self.contents.draw_text(80*2+q,    x+j * i, 112, 32,@dex.abs.to_s,0)
  160.         #---------------------------------------------------------------------
  161.         self.contents.draw_text(80*0+q,     x+j * i+16, 112, 32,@agi.abs.to_s,0)
  162.         self.contents.draw_text(80*1+q,     x+j * i+16, 112, 32,@int.abs.to_s,0)
  163.         self.contents.draw_text(80*2+q,     x+j * i+16, 112, 32,@pdef.abs.to_s,0)
  164.          
  165.       end
  166.       # 防具的情况
  167.       if @item.is_a?(RPG::Armor)
  168.         str1 = item1 != nil ? item1.str_plus : 0
  169.         str2 = @item != nil ? @item.str_plus : 0
  170.         dex1 = item1 != nil ? item1.dex_plus : 0
  171.         dex2 = @item != nil ? @item.dex_plus : 0
  172.            
  173.         agi1 = item1 != nil ? item1.agi_plus : 0
  174.         agi2 = @item != nil ? @item.agi_plus : 0
  175.         int1 = item1 != nil ? item1.int_plus : 0
  176.         int2 = @item != nil ? @item.int_plus : 0
  177.          
  178.         pdef1 = item1 != nil ? item1.pdef : 0
  179.         pdef2 = @item != nil ? @item.pdef : 0
  180.         mdef1 = item1 != nil ? item1.mdef : 0
  181.         mdef2 = @item != nil ? @item.mdef : 0
  182.          
  183.         @str  = str2 - str1
  184.         @dex  = dex2 - dex1
  185.         @agi  = agi2 - agi1
  186.         @int  = int2 - int1
  187.         @pdef = pdef2 - pdef1
  188.         @mdef = mdef2 - mdef1
  189.         x=-16   
  190.         self.contents.draw_text(80*0,        x+j * i, 112, 32,"力量",0)
  191.         self.contents.draw_text(80*1,        x+j * i, 112, 32,"速度",0)
  192.         self.contents.draw_text(80*2,        x+j * i, 112, 32,"敏捷",0)
  193.         self.contents.draw_text(80*0,        x+j * i+16, 112, 32,"魔力",0)
  194.         self.contents.draw_text(80*1,        x+j * i+16, 112, 32,"防御",0)
  195.         self.contents.draw_text(80*2,        x+j * i+16, 112, 32,"魔御",0)
  196.         #---------------------------------------------------------------------
  197.         q=30
  198.         if str2 >= str1
  199.           self.contents.font.color = Color.new(159,251,162,255)
  200.           self.contents.draw_text(80*0+q,       x+j * i, 112, 32,"↑",0)
  201.         else
  202.           self.contents.font.color = Color.new(255,0,0,255)
  203.           self.contents.draw_text(80*0+q,       x+j * i, 112, 32,"↓",0)
  204.         end
  205.         #---------------------------------------------------------------------
  206.         if dex2 >= dex1
  207.           self.contents.font.color = Color.new(159,251,162,255)
  208.           self.contents.draw_text(80*1+q,    x+j * i, 112, 32,"↑",0)
  209.         else
  210.           self.contents.font.color = Color.new(255,0,0,255)
  211.           self.contents.draw_text(80*1+q,    x+j * i, 112, 32,"↓",0)
  212.         end
  213.         #---------------------------------------------------------------------
  214.         if agi2 >= agi1
  215.           self.contents.font.color = Color.new(159,251,162,255)
  216.           self.contents.draw_text(80*2+q,    x+j * i, 112, 32,"↑",0)
  217.         else
  218.           self.contents.font.color = Color.new(255,0,0,255)
  219.           self.contents.draw_text(80*2+q,    x+j * i, 112, 32,"↓",0)
  220.         end
  221.         #---------------------------------------------------------------------
  222.         if int2 >= int1
  223.           self.contents.font.color = Color.new(159,251,162,255)
  224.           self.contents.draw_text(80*0+q,       x+j * i+16, 112, 32,"↑",0)
  225.         else
  226.           self.contents.font.color = Color.new(255,0,0,255)
  227.           self.contents.draw_text(80*0+q,       x+j * i+16, 112, 32,"↓",0)
  228.         end
  229.         #---------------------------------------------------------------------
  230.         q=40-10
  231.         if pdef2 >= pdef1
  232.           self.contents.font.color = Color.new(159,251,162,255)
  233.           self.contents.draw_text(80*1+q,       x+j * i+16, 112, 32,"↑",0)
  234.         else
  235.           self.contents.font.color = Color.new(255,0,0,255)
  236.           self.contents.draw_text(80*1+q,       x+j * i+16, 112, 32,"↓",0)
  237.         end
  238.         #---------------------------------------------------------------------
  239.         if mdef2 >= mdef1
  240.           self.contents.font.color = Color.new(159,251,162,255)
  241.           self.contents.draw_text(80*2+q,       x+j * i+16, 112, 32,"↑",0)
  242.         else
  243.           self.contents.font.color = Color.new(255,0,0,255)
  244.           self.contents.draw_text(80*2+q,       x+j * i+16, 112, 32,"↓",0)
  245.         end
  246.         #---------------------------------------------------------------------
  247.         self.contents.font.color = Color.new(159,251,162,255)
  248.         q=50
  249.         self.contents.draw_text(80*0+q,     x+j * i, 112, 32,@str.abs.to_s,0)
  250.         self.contents.draw_text(80*1+q,    x+j * i, 112, 32,@dex.abs.to_s,0)
  251.         self.contents.draw_text(80*2+q,    x+j * i, 112, 32,@agi.abs.to_s,0)
  252.          
  253.         #---------------------------------------------------------------------
  254.         self.contents.draw_text(80*0+q,     x+j * i+16, 112, 32,@int.abs.to_s,0)
  255.         self.contents.draw_text(80*1+q,       x+j * i+16, 112, 32,@pdef.abs.to_s,0)
  256.         self.contents.draw_text(80*2+q,       x+j * i+16, 112, 32,@mdef.abs.to_s,0)
  257.       end
  258.     end
  259.     self.contents.font.color = normal_color
  260.     i -= 1
  261.     #self.contents.font.size = 22
  262.     # 描绘物品
  263.     if item1 != nil
  264.       x = 4
  265.       y = 64 + 64 * i + 32
  266.       #bitmap = RPG::Cache.icon(item1.icon_name)
  267.       #opacity = self.contents.font.color == normal_color ? 255 : 128
  268.       #self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
  269.       #self.contents.draw_text(x + 28, y, 212, 32, item1.name)
  270.     end
  271.   end
  272.   #end
  273.   #--------------------------------------------------------------------------
  274.   # ● 设置物品
  275.   #     item : 新的物品
  276.   #--------------------------------------------------------------------------
  277.   def item=(item)
  278.     if @item != item
  279.       @item = item
  280.       refresh
  281.     end
  282.   end
  283. end
复制代码

作者: 羽灬翼    时间: 2014-8-7 18:22
本帖最后由 羽灬翼 于 2014-8-7 18:26 编辑
哆啦溯 发表于 2014-8-7 15:30


{:2_271:} 怎么回事?》。。。。


很抱歉有这么多的问题   第一次做   不懂的太多  也没学过语言    非常感谢大大的热心解答
作者: 哆啦溯    时间: 2014-8-7 19:02
羽灬翼 发表于 2014-8-7 18:22
怎么回事?》。。。。


将这附近的
RUBY 代码复制
  1. [url=home.php?mod=space&uid=101599]@atk[/url] = atk2 - atk1
  2.         @str = str2 - str1
  3.         @dex = dex2 - dex1
  4.         [url=home.php?mod=space&uid=6136]@agi[/url] = agi2 - agi1
  5.         @int = int2 - int1
  6.         @pdef = pdef2 - pdef1

改为

        @atk = atk2 - atk1
        @str = str2 - str1
        @dex = dex2 - dex1
        @agi = agi2 - agi1
        @int = int2 - int1
        @pdef = pdef2 - pdef1

作者: 羽灬翼    时间: 2014-8-9 18:19
哆啦溯 发表于 2014-8-7 19:02
将这附近的
        @atk = atk2 - atk1
        @str = str2 - str1

非藏感谢     解决了!
作者: 安格鲁摩亚    时间: 2014-9-20 17:26
求助还有错误

搜狗截图20140920172129.png (7.21 KB, 下载次数: 12)

搜狗截图20140920172129.png

作者: 安格鲁摩亚    时间: 2014-9-20 17:31
是我自己搞错了
作者: 安格鲁摩亚    时间: 2014-9-20 17:39
是我自己搞错了




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