马上注册,查看更多内容,丰富GM资源等你下载探索。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
宠物系统功能相关说明:
开启宠物功能及设置方法:打开M2-》选项-》宠物设置;
1.数据库说明
StdItems:
[★★★★默认宠物蛋必加,名字不要变★★★★★]
100,宠物蛋,91,0,,,,,3710,,,,,,,,,,,,,,,,255,0,0,0,,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
101,白野猪,92,0,,,,,3710,,,,,,,,,,,,,,,,255,0,0,0,,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
103,宠物技能,93,0,1,17,1000,1,1964,0,22,95,0,0,0,0,0,0,0,0,0,0,0,0,251,,,,,0,0,0,0,0,1,2,3,4,5,6,7,8,9,0,0,0,0,0,0,0,0,0,0,0,0,0
102,捕捉网,94,3,1,16,3,0,1195,10000,2,5,0,0,0,0,0,0,0,0,0,0,0,0,251,,,,,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
宠物技能物品(Stdmode:93),字段加成主人属性:
AC: 准确
AC2: 敏捷
MAC: 幸运
MAC2: 攻击速度
DC: 中毒恢复
DC2: 毒物躲避
MC: 魔法恢复
MC2: 魔法躲避
SC: 体力恢复
SC2:
DuraMax:负重(穿戴)
Overlap:负重(背包)
Element,Element1....Element23:元素属性
自定义宠物蛋(Stdmode=92)名字为数据库已有怪物名称 字段为宠物初始属性
AC: 防御下限
AC2: 防御上限
MAC: 魔御下限
MAC2: 魔御上限
DC: 攻击下限
DC2: 攻击上限
MC: 魔法下限
MC2: 魔法上限
SC: 道术下限
SC2: 道术上限
Level: 初始等级
Magic:
90,宠物捕捉,2,70,5,50,60,2,20,20,0,18,50,21,100,24,200,26,400,28,800,30,1600,33,3200,36,6400,39,12800,42,25600,46,51200,50,102400,55,204800,60,409600,66,819200,60,,3,,技能
---------------------------------------------------------------------------------------------------------------------------------------------------------------------
2.QFunction触发说明
·宠物召唤触发
[@GamePetRecall]
#ACT
SendMsg 5 召唤宠物<$GamePetName>
·收回宠物 / 宠物死亡触发
[@GamePetRetake]
#ACT
SendMsg 5 收回宠物 <$GamePetName>
·宠物升级触发 宠物等级变量<$GamePetLevel> 宠物数量变量<$GamePetCount>
[@GamePetLevelUp]
#ACT
SendMsg 5 你的宠物 <$GamePetName>升级了,当前等级<$GamePetLevel>
·双击宠物技能物品触发 QF中的 [@GamePetTrainingMagic]
·NPC命令:中断宠物技能学习 BreakGamePetTrainingMagic
·NPC变量 - 宠物技能名:<$GamePetMagicName>
[@GamePetTrainingMagic]
#act
sendmsg 7 <$GamePetName>准备学习技能(技能编号 :<$GamePetMagicID>;技能名 :<$GamePetMagicName>),技能位置<$GamePetMagicIndex>
BreakGamePetTrainingMagic
sendmsg 6 已经中断了宠物技能学习
·宠物列表选择触发 QF中的 [@GamePetSelect] *新增(打开宠物界面也会触发,返回变量为上次选择)
·NPC变量(仅用于@GamePetSelect):宠物列表中选择索引 <$SelectGamePetIndex>; 宠物列表选择名:<$SelectGamePetName>
[@GamePetSelect]
#act
sendmsg 7 选择宠物列表中的第<$SelectGamePetIndex>个宠物<$SelectGamePetName>
·宠物学习技能触发:
[@GamePetAddMagic]
当前学习技能编号:<$GamePetMagicID>
当前学习技能位置:<$GamePetMagicIndex>
[@GamePetAddMagic]
#act
sendmsg 7 <$GamePetName>学习了技能(技能编号 :<$GamePetMagicID>),技能位置<$GamePetMagicIndex>
·宠物捡物触发人物的QF拾取触发
@PickUpItem
@PickUpItems
@PickUpItemEx
·增加宠物返回到背包后触发:
[@PetToEgg]
#IF
#ACT
LinkBagItem <$BagItemMakeIndex>
SetCustomItemAbil -1 0 0 250
SetCustomItemAbil -1 0 1 50
SetCustomItemAbil -1 0 2 0
SetCustomItemValue -1 0 = 1500
UpdateItem -1
Sendmsg 7 返回一个蛋"<$BagItemName>"并修改资质为1500
·增加双击宠物蛋放入到列表中触发
[@EggToPet]
#IF
#ACT
LinkBagItem <$BagItemMakeIndex>
GetCustomItemValue -1 0 N1 N2
Sendmsg 7 当前宠物蛋"<$BagItecmName>"的资质为<$STR(N1)>
3.宠物操作命令说明
·直接从宠物列表中删除宠物(序号0开始):GamePetToBag 宠物序号
#if
#act
DeleteGamePet 0
·将宠物变成蛋放回到背包:GamePetToBag 宠物序号
#if
#act
GamePetToBag 0
·检测宠物技能
#if
CheckGamePetSkillMagic 宠物技能3
#act
DelGamePetMagic 宠物技能3
·给予宠物蛋
GiveGamePet 怪物名 N变量(存储蛋的MakeIndex,可选变量 可不填,)
;给一个修改属性的蛋蛋,如果就数据库的蛋无需变量直接给予!
[@测试给宠物]
#IF
#ACT
GiveGamePet 白野猪 N1
LinkBagItem <$STR(N1)>
SetCustomItemAbil -1 0 0 250
SetCustomItemAbil -1 0 1 50
SetCustomItemAbil -1 0 2 0
SetCustomItemValue -1 0 = 1500
UpdateItem -1
Sendmsg 7 返回一个蛋并修改资质为1500
·清除当前召唤的宠物技能
ClearGamePetMagic 敏捷技能
·给予宠物经验
GamePetChangeExp 操作符(+,-,=) 值
·设置宠物攻击力倍数
SetGamePetAttackHumPowerRate 攻击人物威力倍率(0不攻击人物,当前值除以100为实际倍数)
·调整宠物攻击人物威力(数值)
SetGamePetAttackHumPowerRateEx 操作符(+/-/=) 值
·获取宠物攻击人物威力(数值)
GetGamePetAttackHumPowerRate 变量
·检测宠物是否召唤
CheckCallGamePet
·检测宠物等级
CheckGamePetLevel 操作符(>/=/<) 等级
·调整宠物等级
ChangeGamePetLevel 操作符(+/-/=) 数值
·召唤宠物:
RecallGamePet 宠物名(当为空时,表示召唤最后一次召唤的宝宝)
·调整宠物蛋属性
ChangeGamePetEggAbil 物品位置(-1或boxitem0-boxitem7) 属性类型(参考下面) 操作符(+-=) 值
属性类型:
1: 等级
2: HP
3: MP
4: EXP
·获取宠物蛋属性:
》GetGamePetEggAbil 物品位置(-1或boxitem0-boxitem7) 属性类型 变量名
属性类型:
1: 等级
2: HP
3: MP
4: EXP
5: MaxHP
6: MaxMP
7: MaxEXP
8: 防御下限
9: 防御上限
10: 魔防下限
11: 魔防上限
12: 攻击下限
13: 攻击上限
14: 魔法下限
15: 魔法上限
16: 道术下限
17: 道术上限
》获取:GetItemFieldValue 物品位置 属性名称 变量名
;Uelement0……uelement23为元素属性,其中元素属性3-10为技能1-8
GetItemFieldValue -1 uelement3 N$技能1
GetItemFieldValue -1 uelement4 N$技能2
GetItemFieldValue -1 uelement5 N$技能3
GetItemFieldValue -1 uelement6 N$技能4
GetItemFieldValue -1 uelement7 N$技能5
GetItemFieldValue -1 uelement8 N$技能6
GetItemFieldValue -1 uelement9 N$技能7
GetItemFieldValue -1 uelement10 N$技能8
返回值为技能在数据库中的 Idx 值+1 例如:你技能一IDX为100 则获取的返回值为101
》设置:SetItemFieldValue 物品位置 属性名称 变量名
属性支持dura, duramax, upgradecount, Value0……Value13, uelement0……uelement23
说明: Value0……Value13为极品属性;uelement0……uelement23为元素属性
SetItemFieldValue -1 uelement3 N$技能1
SetItemFieldValue -1 uelement4 N$技能2
SetItemFieldValue -1 uelement5 N$技能3
SetItemFieldValue -1 uelement6 N$技能4
SetItemFieldValue -1 uelement7 N$技能5
SetItemFieldValue -1 uelement8 N$技能6
SetItemFieldValue -1 uelement9 N$技能7
SetItemFieldValue -1 uelement10 N$技能8
设置值为技能在数据库中的 Idx 值+1 例如:你技能一IDX为100 则获取的返回值为101
·打开宠物界面命令
OpenGamePetDlg
·打开宠物背包(坐标X、Y均为0时,表示不设置坐标)
OpenGamePetBag 坐标X 坐标Y
·npc命令收回宠物
#if
#act
RetakeGamePet
SENDMSG 6 你的宠物已经收回
;------------------------------------------------------------------------
#if
CheckCallGamePet
#act
SENDMSG 6 你的宠物等级是:<$GamePetLevel>
ChangeGamePetLevel + 10
SENDMSG 6 调整后的宠物等级是:<$GamePetLevel>
#elseact
RecallGamePet
OpenGamePetBag 10 10
;------------------------------------------------------------------------
·设置当前召唤的宠物是否可捡物
SetGamePetEnablePick 参数值
参数值:
0:由宠物设置中的“允许宠物捡取物品”选项决定
1:允许捡物
2:禁止捡物
;------------------------------------------------------------------------
·修改当前召唤的宠物属性值:[修改的属性不保存,当收回宠物再重新召唤时,属性值还原]
ChangeGamePetAbility 属性类型 值
0: HP
1: MaxHP
2: MP
3: MaxMP
4: AC1
5: AC2
6: MAC1
7: MAC2
8: DC1
9: DC2
10: MC1
11: MC2
12: SC1
13: SC2
14: 攻击速度
15: 移动速度
30: 属性有效时间(分钟,空或0表示不检测时间)
·获取当前召唤宠物的属性修改值(ChangeGamePetAbility 命令增加的属性,可以理解为附加属性)
GetGamePetAbility 属性类型 变量
·获取当前召唤宠物的属性
GetGamePetAbilityEx 属性类型 变量
·重新计算宠物属性(重算属性是修改属性后重算修改的属性,可多次修改后一次计算):
RecalcGamePetAbility
#if
CheckCallGamePet
#act
GetGamePetAbility 1 N1
Inc N1 100
ChangeGamePetAbility 1 N1
RecalcGamePetAbility
SendMsg 6 修改宠物MaxHP增加值为:<$str(N1)>
;------------------------------------------------------------------------
·获取当前召唤宠物技能数量:
GetGamePetMagicCount 变量名
;------------------------------------------------------------------------
·获取当前召唤宠物技能位置对应技能信息
GetGamePetMagicInfo 技能位置 技能ID变量 技能名变量
[@获取宠物技能信息]
#if
CheckCallGamePet
#act
GetGamePetMagicCount N1
SendMsg 6 你当前宠物一个学习了<$Str(N1)>个技能
GetGamePetMagicInfo 0 N1 S1
SendMsg 6 你当前宠物技能0信息为(技能编号:<$Str(N1)>,技能名称:<$Str(S1)>)
#elseact
SendMsg 6 你还没有召唤宠物
;------------------------------------------------------------------------
·设置当前召唤宠物某个技能位置技能
GiveGamePetMagic 技能位置 技能名称
[@宠物技能位置2学技能]
#if
CheckCallGamePet
#act
;感觉这个没有AddGamePetMagic好用,如果技能位有技能,会被覆盖
GiveGamePetMagic 1 宠物技能1
#elseact
SendMsg 6 你还没有召唤宠物
;------------------------------------------------------------------------
·直接给一个宠物到宠物列表
GiveGamePetEx 宠物名称
[@直接给个宠物]
#act
GiveGamePetEx 红野猪
#if
not CheckCallGamePet
#act
RecallGamePet 红野猪
;------------------------------------------------------------------------
·修改当前召唤的宠物外观/脸型
ChangeGamePetAppr 新的脸型(Appr) 有效时间(分钟)
[@修改宠物脸型]
#if
CheckCallGamePet
#act
ChangeGamePetAppr 10 1
sendmsg 6 你的宠物已经变成了食人花造型,有效时间1分钟
·宠物界面预留按钮9个 850-858
搜索帮助文档“预留按钮”,预留编号增加:
宠物界面 (850-858)
;------------------------------------------------------------------------
·收回指定宠物
#if
equal 白野猪 <$GamePetName>
#act
RetakeGamePet
·自定义修改宠物名字(不保存,重新召唤恢复)
ChangeGamePetName 新名称
#if
CheckCallGamePet
#act
ChangeGamePetName 大花
SENDMSG 6 你的宠物名字更改为[大花]
·获取宠物列表中宠物数量 GetGamePetListCount 变量名
·获取当前召唤的宠物在列表中的顺序 GetRecalGamePetIndex 变量名
#act
GetGamePetListCount N0
GetRecalGamePetIndex N1
SendMsg 6 你的宠物列表共有宠物:<$str(N0)>个;当前召唤的宠物序号是:<$str(N1)>
·设置宠物不攻击
GamePetSetAttackOption 类型 值(0/1/2) 有效时间(0为在线有效)
类型:
0: 允许宠物攻击 ;当值=0时,宠物是否攻击随全局参数;当值=1时,允许宠物攻击;当值=2时,禁止宠物攻击
1: 怪物不攻击宠物 ;当值=0时,随全局参数;当值=1时,开启此功能
2: 宠物不受任何攻击 ;当值=0时,随全局参数;当值=1时,开启此功能
下方为2021-10-08增加:
宠物设置——》参数设置——》增加选项"杀怪触发[@GamePetKillMon]"
增加宠物(攻击-魔法)触发
@GamePetAttack
@GamePetMagicAttack
增加宠物(被攻击-被魔法)触发
@GamePetStruck
@GamePetMagicStruck
增加宠物(攻击-被攻击掉血前)触发、修改当前伤害血量
@GamePetAttackDamage
@GamePetStruckDamage
宠物自身坐标
<$Pet.X>
<$Pet.Y>
宠物血量
<$Pet.HP>
<$Pet.MaxHP>
宠物蓝:
<$Pet.MP>
<$Pet.MaxMP>
宠物攻击目标名称:
<$Pet.CurTargetName>; 不带数字
<$Pet.CurTargetFullName>
宠物当前攻击目标坐标
<$Pet.CurTargetX>
<$Pet.CurTargetY>
宠物当前击中目标HP
<$Pet.CurTargetHP>
<$Pet.CurTargetMaxHP>
宠物攻击目标掉血量
<$Pet.DamageValue>
宠物杀死的怪物名称
<$Pet.KillMonName>
;变量:当前伤害掉血量(仅用于以下触发):<$Pet.DamageValue>
[@GamePetAttackDamage]
#ACT
SENDMSG 6 宠物攻击目标,掉血量为<$Pet.DamageValue>,攻击加成10点血量
Pet.ChangeDamageValue 0 + 10
[@GamePetStruckDamage]
#ACT
SENDMSG 6 宠物被攻击,掉血量为<$Pet.DamageValue>,抵御掉血量的50%
Pet.ChangeDamageValue 1 - 50
注:常规普通的宠物捡物在引擎-列表信息1-设置允许捡取和优选捡起 (普通捡物品列表与常规英雄捡物同步(M2- 列表信息1设置允许捡起物品),特殊需求用户可同步玩家内挂设置进行捡物品)
|