Project1
标题:
【送分活动②】以下几个道具(脚本如何写)如何制作?
[打印本页]
作者:
chd114
时间:
2012-7-4 13:34
标题:
【送分活动②】以下几个道具(脚本如何写)如何制作?
本帖最后由 chd114 于 2012-7-6 21:32 编辑
挑战内容1:已知楼主制作了一个APRP的直线伤害系统,但是直线射击范围却被掐住(前方有2个敌人在同一条直线上,射程为2的时候直接穿过第一个敌人击中第二个敌人),如何修改才能设定在射程范围内直接射击离自己最近的敌人?
挑战内容2:如何制作一个合理滑索(等于忍者飞镖,可以通过扔飞镖扔到某个事件上把自己带到那个事件的前面一格,等同XAS···),要求是在投掷范围内投掷离自己最近的目标事件,且这个事件不等于当前角色所在位置前方一格、此事件前方有一格可行走原件时投掷才能生效。
挑战内容3:如何制作一个快速清除规定名称格式的事件和画在第二层用变量数组指定好的图块?
挑战内容4:请以以下脚本为蓝图改造出一种与之兼容的图片显示脚本
#本脚本来自百度贴吧
#http://tieba.baidu.com/p/1437728543
#作者:蹂躏の牙
#oksh略作改动
class Map_Damage
attr_accessor :pic
def initialize
@pic=Sprite.new
@front1=RPG::Cache.picture("front1")
@front2=RPG::Cache.picture("front2")
@front3=RPG::Cache.picture("front3")
@front4=RPG::Cache.picture("front4")
@front5=RPG::Cache.picture("front5")
@front6=RPG::Cache.picture("front6")
@pic.bitmap=Bitmap.new(640,480)
@pic.z=50
end
def mapupdate
@pic.bitmap.clear
return if $game_variables[173]<1#地图显示伤害的开关关闭则不显示伤害
if if $game_variables[173]>1
#必须打开8号开关与56号开关打开才有伤害显示
for i in $game_variables[90][0]...$game_variables[90][0]+$game_variables[90][1]
for j in $game_variables[90][2]...$game_variables[90][2]+$game_variables[90][3]
if $game_map.have_an_event?(i,j)#搜索全场景事件
@iid=$game_map.check_event(i,j)
if $game_map.events[@iid].event.name[0,6]=="怪物"
draw_mapdamage($game_map.events[@iid].event.name[6,3].to_i,i,j)
#获取怪物属性进入画伤害的脚本段
end
end
end
end
end#持有怪物手册到此结束
end
def draw_mapdamage(number,i,j)
e=Enemy_property.new(number)
if e.got_p(19)
if $game_variables[104][$game_variables[1]][7]<1
return#潜伏怪不显示伤害(持有反潜伏的物品后显示)
else
if ($game_map.events[@iid].x-$game_player.x).abs+($game_map.events[@iid].y-$game_player.y).abs<=$game_variables[104][$game_variables[1]][7]
else
return
end
end
end
if e.got_p(26)
return if $game_map.events[@iid].iserase==true#重生怪打败后暂不显示伤害
end
damage=e.got_damage
if e.got_p(30) and $game_switches[99]==true#伪装的随机开关必须打开
damage=1
end
if damage>=999999 or if $game_variables[173]<2
@pic.bitmap.blt(i*32+8, j*32+20, @front6, Rect.new(0,0,24,12))
else
if damage>=$game_actors[$game_variables[1]+1].hp
a=damage.to_s
for q in 0...a.size
@pic.bitmap.blt(i*32-a.size*8+q*8+32, j*32+20, @front5, Rect.new(a[q,1].to_i*15-1,0,12,12))
end
end
if damage<$game_actors[$game_variables[1]+1].hp/25
a=damage.to_s
for q in 0...a.size
@pic.bitmap.blt(i*32-a.size*8+q*8+32, j*32+20, @front1, Rect.new(a[q,1].to_i*15-1,0,12,12))
end
end
if damage>=$game_actors[$game_variables[1]+1].hp/25 and damage<$game_actors[$game_variables[1]+1].hp/8
a=damage.to_s
for q in 0...a.size
@pic.bitmap.blt(i*32-a.size*8+q*8+32, j*32+20, @front2, Rect.new(a[q,1].to_i*15,0,12,12))
end
end
if damage>=$game_actors[$game_variables[1]+1].hp/8 and damage<$game_actors[$game_variables[1]+1].hp/3
a=damage.to_s
for q in 0...a.size
@pic.bitmap.blt(i*32-a.size*8+q*8+32, j*32+20, @front3, Rect.new(a[q,1].to_i*15-1,0,12,12))
end
end
if damage>=$game_actors[$game_variables[1]+1].hp/3 and damage<$game_actors[$game_variables[1]+1].hp
a=damage.to_s
for q in 0...a.size
@pic.bitmap.blt(i*32-a.size*8+q*8+32, j*32+20, @front4, Rect.new(a[q,1].to_i*15-1,0,12,12))
end
end
end
end#if结束
end#def结束
end
end
复制代码
要求将此图片(图一)如此显示(图二)
光环.png
(60.97 KB, 下载次数: 3)
下载附件
保存到相册
2012-7-4 19:03 上传
图一
QQ截图20120704190302.png
(30.56 KB, 下载次数: 4)
下载附件
保存到相册
2012-7-4 19:03 上传
图二
挑战时限为20小时(共计四项),完成一项可获得45EXP,每提前一小时完成每一项可获得修正奖励4EXP dsu_plus_rewardpost_czw
作者:
chd114
时间:
2012-7-4 14:07
本帖最后由 chd114 于 2012-7-4 15:20 编辑
@hcm
@he11120
@hys111111
@zhixin1997
@hcm
@zhixin1997
@hys111111
@hcm
链接坏掉不就等于没解决么······
作者:
chd114
时间:
2012-7-6 15:38
·····································
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1