Project1
标题:
2个小问题
[打印本页]
作者:
liuguanmin
时间:
2008-7-22 20:08
提示:
作者被禁止或删除 内容自动屏蔽
作者:
尐臉?嗵紅
时间:
2008-7-22 20:22
第一个不会..本人也是新手..
第二个:设置事件弄"战斗事件"把"可以逃跑"勾去.就可以让打的人不许逃跑了.
作者:
redant
时间:
2008-7-23 00:17
1、ps做好了
#==============================================================================
# ■ Window_BattleStatus
#------------------------------------------------------------------------------
# 显示战斗画面同伴状态的窗口。
#==============================================================================
class Window_BattleStatus < Window_Base
#--------------------------------------------------------------------------
# ● 初始化对像
#--------------------------------------------------------------------------
def initialize
super(0, 0, 640, 480)
self.contents = Bitmap.new(width - 32, height - 32)
@level_up_flags = [false, false, false, false]
#........................................................................
self.opacity = 0
@sta_back = []
@sta_output = []
# @cp_output = []
# @hp_bitmap = RPG::Cache.picture("../system/battle/hmcp/hp_bar.png")
#@mp_bitmap = RPG::Cache.picture("../system/battle/hmcp/mp_bar.png")
# @bitmap3 = RPG::Cache.picture("../system/battle/hmcp/底.png")
# @cp_bitmap = RPG::Cache.picture("../system/battle/hmcp/cp_bar.png")
# @cp_output = []
# @cp_back_bar = Sprite.new
#@cp_back_bar.bitmap = Bitmap.new("Graphics/system/battle/hmcp/cp_back_bar")
## @cp_back_bar.x = 450
# @cp_back_bar.y = 25
#@cp_back_bar.z = self.z + 1
# @actor_cp_sprite = []
# @actor_cp_sprite_back = []
for actor_index in 1..$game_party.actors.size
# @cp_output[actor_index] = Sprite.new
# @cp_output[actor_index].bitmap = Bitmap.new(133, 78)
# @cp_output[actor_index].x = 100 + (actor_index - 1) * 133
# @cp_output[actor_index].y = 480 - 78 - 10
# @cp_output[actor_index].z = self.z + 2
# @cp_output[actor_index].bitmap.clear
@sta_back[actor_index] = Sprite.new
@sta_back[actor_index].bitmap = Bitmap.new("Graphics/System/Battle/sta_back/" + $game_party.actors[actor_index - 1].name + "战斗.png")
@sta_back[actor_index].x = 10
@sta_back[actor_index].y = 220 + (actor_index - 1) * 80
@sta_back[actor_index].z = self.z + 1
@sta_output[actor_index] = Sprite.new
@sta_output[actor_index].bitmap = Bitmap.new(133, 78)
@sta_output[actor_index].x = 75
@sta_output[actor_index].y = 232 + (actor_index - 1) * 80
@sta_output[actor_index].z = self.z + 2
@sta_output[actor_index].bitmap.clear
@sta_output[actor_index].bitmap.font.size = 10
@sta_output[actor_index].bitmap.font.name = "黑体"
# hp_width = $game_party.actors[actor_index - 1].hp * @hp_bitmap.width/$game_party.actors[actor_index - 1].maxhp
# hp_rect = Rect.new(0, 0, hp_width, 5)
# mp_width = $game_party.actors[actor_index - 1].sp * @mp_bitmap.width/$game_party.actors[actor_index - 1].maxsp
# mp_rect = Rect.new(0, 0, mp_width, 5)
# @src_rect3 = Rect.new(0,0,@bitmap3.width, @bitmap3.height)
# self.contents.blt(10,220, @bitmap3, @src_rect3)
# @sta_output[actor_index].bitmap.blt(66, 44, @hp_bitmap, hp_rect)
# @sta_output[actor_index].bitmap.blt(66, 64, @mp_bitmap, mp_rect)
# @sta_output[actor_index].bitmap.blt(66, 54, @bitmap3, @src_rect3)
@sta_output[actor_index].bitmap.font.color.set(255, 0, 0)
@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)
@sta_output[actor_index].bitmap.font.color.set(0, 0, 255)
@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)
end
#........................................................................
refresh
end
#--------------------------------------------------------------------------
# ● 释放
#--------------------------------------------------------------------------
def dispose
super
# @hp_bitmap.bitmap.dispose
# @hp_bitmap.dispose
# @mp_bitmap.bitmap.dispose
# @mp_bitmap.dispose
#@cp_bitmap.bitmap.dispose
# @cp_bitmap.dispose
for actor_index in 1..$game_party.actors.size
@sta_back[actor_index].bitmap.dispose
@sta_back[actor_index].dispose
@sta_output[actor_index].bitmap.dispose
@sta_output[actor_index].dispose
# @cp_output[actor_index].bitmap.dispose
# @cp_output[actor_index].dispose
end
end
#--------------------------------------------------------------------------
# ● 设置升级标志
# actor_index : 角色索引
#--------------------------------------------------------------------------
def level_up(actor_index)
@level_up_flags[actor_index] = true
end
#......................................................................
#--------------------------------------------------------------------------
# ● 设置正在攻击标志
# actor_index : 角色索引
#--------------------------------------------------------------------------
def in_atk(actor_index)
@sta_back[actor_index + 1].bitmap = Bitmap.new("Graphics/System/Battle/sta_back/" + $game_party.actors[actor_index].name + "战斗1.png")
end
#--------------------------------------------------------------------------
# ● 设置不在攻击标志
# actor_index : 角色索引
#--------------------------------------------------------------------------
def out_atk(actor_index)
@sta_back[actor_index + 1].bitmap = Bitmap.new("Graphics/System/Battle/sta_back/" + $game_party.actors[actor_index].name + "战斗.png")
end
#......................................................................
#--------------------------------------------------------------------------
# ● 刷新
#--------------------------------------------------------------------------
def refresh
self.contents.clear
@item_max = $game_party.actors.size
for i in 0...$game_party.actors.size
actor = $game_party.actors[i]
#......................................................................
actor_x = i * 160 + 145
actor_y = i * 80 + 220
@sta_output[i + 1].bitmap.clear
# hp_width = $game_party.actors[i].hp * @hp_bitmap.width/$game_party.actors[i].maxhp
# hp_rect = Rect.new(0, 0, hp_width, 5)
# mp_width = $game_party.actors[i].sp * @mp_bitmap.width/$game_party.actors[i].maxsp
# mp_rect = Rect.new(0, 0, mp_width, 5)
# @sta_output[i + 1].bitmap.blt(66, 44, @hp_bitmap, hp_rect)
# @sta_output[i + 1].bitmap.blt(66, 64, @mp_bitmap, mp_rect)
@sta_output[i + 1].bitmap.font.color.set(255, 0, 0)
@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)
@sta_output[i + 1].bitmap.font.color.set(0, 0, 255)
@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)
#......................................................................
if @level_up_flags[i]
self.contents.font.color = normal_color
self.contents.draw_text(0, 0, 640 , 480, "LEVEL UP!")
else
draw_actor_state(actor, 120, actor_y)
end
end
end
#--------------------------------------------------------------------------
# ● 刷新画面
#--------------------------------------------------------------------------
def update
super
# 主界面的不透明度下降
if $game_temp.battle_main_phase
self.contents_opacity = 255 #if self.contents_opacity > 1
else
self.contents_opacity = 255 #if self.contents_opacity < 255
end
end
end
复制代码
这个脚本 改的有点乱
如果要血条的话 把#hp部分去掉
头像是一个人两个 主角的名字+战斗png和主角名字+战斗1.png
Scene_Battle 3搜索 转向 (转向前和后)
所有转向 都要像下面一样 一看就明白了
# 转向前一个角色的指令输入
end_atk(@active_battler.index)
phase3_prior_actor
[LINE]1,#dddddd[/LINE]
# @hp_bitmap = RPG::Cache.picture("../system/battle/hmcp/hp_bar.png")
#@mp_bitmap = RPG::Cache.picture("../system/battle/hmcp/mp_bar.png")
比如这个 把前面# 号去掉 因为我用了别的血条 和这个重复显示
厚道地把这个送你
#图片血槽显示Ver 1.0(清爽版)
# by逐月
#描画HP槽
def HP (actor,x,y)
@bitmap3 = Bitmap.new("Graphics/Pictures/底")
@src_rect3 = Rect.new(0,0,@bitmap3.width, @bitmap3.height)
self.contents.blt(x,y, @bitmap3, @src_rect3)
#HP显示
@bitmap3 = Bitmap.new("Graphics/Pictures/hp")
w3 = @bitmap3.width * actor.hp/actor.maxhp
@src_rect3 = Rect.new(0,0,w3, @bitmap3.height)
self.contents.blt(x+4,y+2, @bitmap3, @src_rect3)
end
#描画SP槽
def SP (actor,x,y)
@bitmap1 = Bitmap.new("Graphics/Pictures/底")
@src_rect1 = Rect.new(0,0,@bitmap1.width, @bitmap1.height)
self.contents.blt(x,y, @bitmap1, @src_rect1)
#SP显示
@bitmap1 = Bitmap.new("Graphics/Pictures/sp")
w1 = @bitmap1.width * actor.sp/actor.maxsp
@src_rect1 = Rect.new(0,0,w1, @bitmap1.height)
self.contents.blt(x+4,y+2, @bitmap1, @src_rect1)
end
#==============================================================================
# ■ Window_BattleStatus
#==============================================================================
class Window_BattleStatus < Window_Base
#--------------------------------------------------------------------------
# ● 初始化
#--------------------------------------------------------------------------
alias xrxs_bp2_refresh refresh
def refresh
xrxs_bp2_refresh
@item_max = $game_party.actors.size
for i in 0...$game_party.actors.size
actor = $game_party.actors[i]
case i
when 0
x = 145
y = 259
when 1
x = 145
y = 339
when 2
x = 145
y = 419
when 3
x = 145
y = 499
end
###########################一切自改##############################
HP(actor, x-10, y)
SP(actor, x-10, y + 18)
#######################################一切自改###############
end
end
end
复制代码
坐标自己调
2、http://rpg.blue/web/htm/news328.htm
[LINE]1,#dddddd[/LINE]
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者:
亮F
时间:
2008-7-23 01:24
第一个问题我看不明白
第二个问题去主站搜索 “去除逃跑 ”就有个脚本
作者:
liuguanmin
时间:
2008-7-23 06:40
提示:
作者被禁止或删除 内容自动屏蔽
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1