设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
12
返回列表 发新帖
楼主: hgfor
打印 上一主题 下一主题

300分,修改地图与战斗显示的窗口问题,带工程.

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
60
在线时间
9 小时
注册时间
2006-9-7
帖子
303
11
 楼主| 发表于 2008-11-18 17:16:06 | 只看该作者
一天就这样过去了,再次华丽向上一顶,再等两天看看.
十年磨一剑,蓦然回首,年华如水,青春如歌。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

蚂蚁卡卡

梦石
0
星屑
116
在线时间
66 小时
注册时间
2007-12-16
帖子
3081
12
发表于 2008-11-18 21:36:39 | 只看该作者
  1. #==============================================================================
  2. # ■ Window_BattleStatus
  3. #------------------------------------------------------------------------------
  4. #  显示战斗画面同伴状态的窗口。
  5. #==============================================================================

  6. class Window_BattleStatus < Window_Base
  7.   #--------------------------------------------------------------------------
  8.   # ● 初始化对像
  9.   #--------------------------------------------------------------------------
  10.   def initialize
  11.     super(0, 0, 640, 480)
  12.     self.contents = Bitmap.new(width - 32, height - 32)
  13.     @level_up_flags = [false, false, false, false]
  14.     #........................................................................
  15.     self.opacity = 0
  16.     @sta_back = []
  17.     @sta_output = []
  18.    # @cp_output = []
  19.     @hp_bitmap = RPG::Cache.picture("HP_Meter.png")
  20.     @mp_bitmap = RPG::Cache.picture("SP_Meter.png")
  21.    # @bitmap3 = RPG::Cache.picture("../system/battle/hmcp/底.png")
  22.     # @cp_bitmap = RPG::Cache.picture("../system/battle/hmcp/cp_bar.png")
  23.    # @cp_output = []
  24.    # @cp_back_bar = Sprite.new
  25.     #@cp_back_bar.bitmap = Bitmap.new("Graphics/system/battle/hmcp/cp_back_bar")
  26.    ## @cp_back_bar.x = 450
  27.    # @cp_back_bar.y = 25
  28.     #@cp_back_bar.z = self.z + 1
  29.    # @actor_cp_sprite = []
  30.    # @actor_cp_sprite_back = []
  31.    @xy_window = Window_xy.new
  32.    @xy_window.x = -16
  33.    @xy_window.y = -16
  34.    @xy_window.opacity = 0
  35.     for actor_index in 1..$game_party.actors.size
  36. #      @cp_output[actor_index] = Sprite.new
  37.      # @cp_output[actor_index].bitmap = Bitmap.new(133, 78)
  38.     #  @cp_output[actor_index].x = 100 + (actor_index - 1) * 133
  39.     #  @cp_output[actor_index].y = 480 - 78 - 10
  40.     #  @cp_output[actor_index].z = self.z + 2
  41. #      @cp_output[actor_index].bitmap.clear
  42.       @sta_back[actor_index] = Sprite.new
  43.       @sta_back[actor_index].bitmap = Bitmap.new("Graphics/Pictures/" + $game_party.actors[actor_index - 1].name + "战斗.png")
  44.       @sta_back[actor_index].x = 510-(actor_index - 1) * 130
  45.       @sta_back[actor_index].y = 0
  46.       @sta_back[actor_index].z = self.z + 1
  47.      @sta_output[actor_index] = Sprite.new
  48.       @sta_output[actor_index].bitmap = Bitmap.new(180, 120)
  49.      @sta_output[actor_index].x = 476-(actor_index - 1) * 130
  50.       @sta_output[actor_index].y = -29#(actor_index - 1) * 80 - 29
  51.       @sta_output[actor_index].z = self.z + 200
  52.       @sta_output[actor_index].bitmap.clear
  53.       @sta_output[actor_index].bitmap.font.size = 10
  54.       @sta_output[actor_index].bitmap.font.name = "黑体"
  55.       hp_width = $game_party.actors[actor_index - 1].hp * @hp_bitmap.width/$game_party.actors[actor_index - 1].maxhp
  56.       hp_rect = Rect.new(0, 0, hp_width, 12)
  57.       mp_width = $game_party.actors[actor_index - 1].sp * @mp_bitmap.width/$game_party.actors[actor_index - 1].maxsp
  58.       mp_rect = Rect.new(0, 0, mp_width, 12)
  59.       
  60.      # @src_rect3 = Rect.new(0,0,@bitmap3.width, @bitmap3.height)
  61.      # self.contents.blt(10,220, @bitmap3, @src_rect3)
  62.       
  63.     #  @sta_output[actor_index].bitmap.blt(66, 44, @hp_bitmap, hp_rect)
  64.      # @sta_output[actor_index].bitmap.blt(66, 64, @mp_bitmap, mp_rect)
  65.      # @sta_output[actor_index].bitmap.blt(66, 54, @bitmap3, @src_rect3)
  66.       
  67.       #@sta_output[actor_index].bitmap.font.color.set(255, 0, 0)
  68.     #  @sta_output[actor_index].bitmap.draw_text(80, 31, 77, 11,$game_party.actors[actor_index - 1].hp.to_s + "/" + $game_party.actors[actor_index - 1].maxhp.to_s)
  69.      # @sta_output[actor_index].bitmap.font.color.set(0, 0, 255)
  70.      #@sta_output[actor_index].bitmap.draw_text(80, 51, 77, 11,$game_party.actors[actor_index - 1].sp.to_s + "/" + $game_party.actors[actor_index - 1].maxsp.to_s)
  71.     end
  72.     #........................................................................
  73.     refresh
  74.   end
  75.   #--------------------------------------------------------------------------
  76.   # ● 释放
  77.   #--------------------------------------------------------------------------
  78.   def dispose
  79.     super
  80.     @hp_bitmap.bitmap.dispose
  81.    @hp_bitmap.dispose
  82.     @mp_bitmap.bitmap.dispose
  83.     @mp_bitmap.dispose
  84.     #@cp_bitmap.bitmap.dispose
  85.    # @cp_bitmap.dispose
  86.     for actor_index in 1..$game_party.actors.size
  87.       @sta_back[actor_index].bitmap.dispose
  88.       @sta_back[actor_index].dispose
  89.       @sta_output[actor_index].bitmap.dispose
  90.       @sta_output[actor_index].dispose
  91.      # @cp_output[actor_index].bitmap.dispose
  92.      # @cp_output[actor_index].dispose
  93.     end
  94.   end
  95.   #--------------------------------------------------------------------------
  96.   # ● 设置升级标志
  97.   #     actor_index : 角色索引
  98.   #--------------------------------------------------------------------------
  99.   def level_up(actor_index)
  100.     @level_up_flags[actor_index] = true
  101.   end
  102.   #......................................................................
  103.   #--------------------------------------------------------------------------
  104.   # ● 设置正在攻击标志
  105.   #     actor_index : 角色索引
  106.   #--------------------------------------------------------------------------
  107.   #def in_atk(actor_index)
  108.    #@sta_back[actor_index + 1].bitmap = Bitmap.new("Graphics/System/Battle/sta_back/" + $game_party.actors[actor_index].name + "战斗1.png")
  109.   #end
  110.   #--------------------------------------------------------------------------
  111.   # ● 设置不在攻击标志
  112.   #     actor_index : 角色索引
  113.   #--------------------------------------------------------------------------
  114.   #def out_atk(actor_index)
  115.    # @sta_back[actor_index + 1].bitmap = Bitmap.new("Graphics/System/Battle/sta_back/" + $game_party.actors[actor_index].name + "战斗.png")
  116.   #end
  117.   #......................................................................
  118.   #--------------------------------------------------------------------------
  119.   # ● 刷新
  120.   #--------------------------------------------------------------------------
  121.   def refresh
  122.     self.contents.clear
  123.     @item_max = $game_party.actors.size
  124.     for i in 0...$game_party.actors.size
  125.       actor = $game_party.actors[i]
  126.       #......................................................................
  127.        actor_x =  480#i * 160 + 145
  128.        actor_y =  0#i * 80 + 220
  129.       @sta_output[i + 1].bitmap.clear
  130.      hp_width = $game_party.actors[i].hp * @hp_bitmap.width/$game_party.actors[i].maxhp
  131.       hp_rect = Rect.new(0, 0, hp_width, 12)
  132.       mp_width = $game_party.actors[i].sp * @mp_bitmap.width/$game_party.actors[i].maxsp
  133.       mp_rect = Rect.new(0, 0, mp_width, 12)
  134.       @sta_output[i + 1].bitmap.blt(80, 44, @hp_bitmap, hp_rect)
  135.       #间距
  136.       @sta_output[i + 1].bitmap.blt(80, 56, @mp_bitmap, mp_rect)
  137.      # @sta_output[i + 1].bitmap.font.color.set(255, 0, 0)
  138.       #@sta_output[i + 1].bitmap.draw_text(80, 31, 77, 11,$game_party.actors[i].hp.to_s + "/" + $game_party.actors[i].maxhp.to_s)
  139.       #@sta_output[i + 1].bitmap.font.color.set(0, 0, 255)
  140.       #@sta_output[i + 1].bitmap.draw_text(80, 51, 77, 11,$game_party.actors[i].sp.to_s + "/" + $game_party.actors[i].maxsp.to_s)
  141.       #......................................................................
  142.      # if @level_up_flags[i]
  143.       #  self.contents.font.color = normal_color
  144.        # self.contents.draw_text(0, 0, 640 , 480, "LEVEL UP!")
  145.       #else
  146.        # draw_actor_state(actor, 120, actor_y)
  147.      # end
  148.     end
  149.   end
  150.   #--------------------------------------------------------------------------
  151.   # ● 刷新画面
  152.   #--------------------------------------------------------------------------
  153.   def update
  154.     super
  155. #     主界面的不透明度下降
  156.     if $game_temp.battle_main_phase
  157.       self.contents_opacity = 255 #if self.contents_opacity > 1
  158.     else
  159.       self.contents_opacity = 255 #if self.contents_opacity < 255
  160.     end
  161.   end
  162. end
复制代码


HP_Tx.png和人头 PS合一起
效果图如下


粗略一改 得出 不代表不会出现冲突和错误=。=
命名规则请仔细查看 脚本中 战斗 字样
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
《隋唐乱》完整解密版点击进入
米兰,让我怎么说离开……

曾经我也是一个有志青年,直到我膝盖中了一箭……

《隋唐乱》博客地址
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
9 小时
注册时间
2006-9-7
帖子
303
13
 楼主| 发表于 2008-11-18 23:21:16 | 只看该作者
刚才测试了一下脚步,效果正是我想要的,还可以在地图上在显示一个宠物的框吗?

HP_Tx.png和人头 PS合一起
这个可能有点麻烦,我就想让宠物的头像就显示那一个默认的,要是这样,如果有20个宠物就得重复20次那个文件(名字是不同的),能不能再帮我修改一下,我自己改了老出错,对脚本也不太会.

谢谢.
十年磨一剑,蓦然回首,年华如水,青春如歌。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

蚂蚁卡卡

梦石
0
星屑
116
在线时间
66 小时
注册时间
2007-12-16
帖子
3081
14
发表于 2008-11-18 23:56:40 | 只看该作者
刚关了 =。=
一会儿 要去泡小MM {/se}

为什么和在一起呢?因为我不懂宠物脚本 也没想加宠物 所以和住了
20个宠物也不多嘛  既然能给宠物加头像 就不要吝啬=。=

如果单纯仿制大话  就你说的那样做吧= =|
《隋唐乱》完整解密版点击进入
米兰,让我怎么说离开……

曾经我也是一个有志青年,直到我膝盖中了一箭……

《隋唐乱》博客地址
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
9 小时
注册时间
2006-9-7
帖子
303
15
 楼主| 发表于 2008-11-19 02:06:25 | 只看该作者
就是想仿制大话的,嘿嘿, 工程得一步一步慢慢完善, 啥时我也能做的跟rpg1882的差不多啊,现在还差在地图上显示一个宠物的窗口(其实也就是两个人物的窗口)

  大概实现了这些功能:

  战斗时显示了怪物和角色名
  全动画战斗系统
  八方向待机系统
  仿大话的多秒系统
  真八方向行走
  图片战斗菜单
  
   恩,先把基本的系统弄好先,到时再制作任务等也更快!
十年磨一剑,蓦然回首,年华如水,青春如歌。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-1-21 08:54

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表