传奇杀人魔戒的制作方法

[复制链接]
查看636 | 回复0 | 2021-10-12 10:26:45 | 显示全部楼层 |阅读模式
魔戒属性隐藏,可以大幅度提高自身攻击力,魔法和道术,并会被恶魔附体,提高全身属性总和的10%,但是魔戒也有邪恶的一面:戴上后无法取下,所带魔戒之人必须每隔一个小时杀一个人来用鲜血祭奠恶魔之魂。若一个小时内不杀人,那么你将会被魔戒杀死,并且魔戒自动消失,真正的被杀哦,还会掉装备。还有一个相当严格的要求,你所杀死的人必须高于35级,而且不能连续杀死同一个人,否则无效,你不要以为下线或者小退等就可以延长时间,无用的,下线自动保存时间,再次上线后自动计算你的剩余时间,杀死一个人以后就可以把你的生命重新延长至一个小时。

在土城的戒灵处可以合成魔戒,也可以使用元宝将已戴上的魔戒取下来。合成魔戒的材料在中土地图中取得。

魔戒特点:

1.带上后属性大增,但是拿不下来.
2.从带上那一刻,每一小时你就要杀一个人.
杀35级以下小人无效,杀同一个人无效.

3.如果你按魔戒的指示,杀死了一个人后,重新让你的生命增加一小时.
4.如果你没有完成杀人任务,魔戒会消失,并把你杀死,无论你是小退,还是下线.

5.安全区开通下线挂机功能时,自动关闭计时器.

关于增加全身属性10%,这一点你可以设置一个套装,你面只要一件物品就行了

其他的功能用脚本可以实现,最大的难度是.
1 计时问题.
2 如何判断你杀的人是否已经杀过.你杀的人的级别是多少?


解决:
1.计时问题,可以用上jsM2 的个人时钟,但个人时钟只适合短时间计时,以秒计算,且下线在上线后计时停止.

实现长时间的计时,这里我发现了一个计巧.就是用一个 human 的个人参数.计时设成60 就是60秒.第计时一分钟,参数+1
,但这个参数到60时,便是一小时.参数清0重新计时.小退在上时,只要在启动个人时钟就可以继续计时.

2.第二个问题的解决.是我发现了最新的M2的一个特殊功能,就是让他人执行脚本

[@PlayDie]
#IF
#ACT

Mov S10 <$Killer>
HCall <$STR(S10)> @TTT

你可以利用被杀者的这一脚本把,把资料传送给杀人者-<$Killer>


原理:就是把传过来的杀人者的姓名,判断是不是带魔戒的(之前我把带魔戒的玩家写入一个文本中)

如果是,在判断自已的级别是不是大于35级.自已是不是在杀人者杀过人的名单里.如果都不是.那么触发杀人者脚本.来改变他的参数.


===================================


部分关键脚本:
Qmanage.txt

;魔戒记时
[@OnTimer6]
#IF
checkitemw 魔戒
#ACT
break
#CALL
[\游戏活动\魔戒记时.txt] @魔戒记时
#if
#act
SetOffTimer 6
set [108] 0

CALCVAR HUMAN MJJS = 0
CALCVAR HUMAN MJTIME = 0
SAVEVAR HUMAN MJJS
..\QuestDiary\游戏记录\魔戒记时.txt
SAVEVAR HUMAN MJTIME ..\QuestDiary\游戏记录\魔戒记时.txt

CHANGEMODE 3 0
......................

[@魔戒记时]
{
#if

checkcastlewar 0
CHECKVAR HUMAN MJTIME = 2
#act
break

CHANGEMODE 3 0
sendmsg 7 [地狱之声]攻城期间,魔戒暂时失效.
#if
checkcastlewar 0

CHECKVAR HUMAN MJTIME = 1
#act
break
CHANGEMODE 3 0
sendmsg
7 [地狱之声]攻城期间,魔戒暂时失效.

#if
CHECKVAR HUMAN MJTIME = 0
CHECKVAR
HUMAN MJJS = 0
#ACT
break
CALCVAR HUMAN MJJS + 1
SAVEVAR HUMAN
MJJS ..\QuestDiary\游戏记录\魔戒记时.txt
CHANGEMODE 3 0
sendmsg 0
[地狱之声]被地狱"魔戒"附身的【%s】走到了生命的终结,现在等待它的只有死亡.
...................

Qfunction-0.txt
;死亡触发
[@PlayDie]
#IF
#act
set [111] 0

set [112] 0
set [113] 0
MOV S0 <$KILLER>
MOV S1
<$USERNAME>
MOV S2 <$LEVEL>
#CALL [游戏活动/被杀人检测.txt] @被杀




[@被杀]
{
#if
CheckTextList QuestDiary\游戏记录\拥有魔戒者.txt
<$str(S0)>
#act
break
goto @被魔戒杀


[@被魔戒杀]
#if

CHECKLEVELEX < 35
#act
break
sendmsg 5
[地狱之声]你被戴邪恶魔戒的【<$str(S0)>】所杀,。
HCall <$STR(S0)> @魔戒复活1
#if

;CHECKNAMELIST ..\QuestDiary\游戏记录\魔戒杀人记录\<$str(s0)>.txt

CheckTextList QuestDiary\游戏记录\魔戒杀人记录\<$str(s0)>.txt <$USERNAME>

#act
break
sendmsg 5
[地狱之声]你被戴邪恶魔戒的【<$str(S0)>】所杀,这里记录你已经让他杀过,下回小心了。
HCall <$STR(S0)>
@魔戒复活2
#if
#act
sendmsg 5
[地狱之声]你被戴邪恶魔戒的【<$str(S0)>】所杀,魔戒具有隐身能力,所以你看不到杀人者。
AddTextList
QuestDiary\游戏记录\魔戒杀人记录\<$str(s0)>.txt <$USERNAME>
HCall
<$STR(S0)> @魔戒复活3


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则