代码来源于“易宁”大佬的分享,仅供学习,不要直接复制粘贴。
原帖链接:http://bbs.3dmgame.com/thread-3859071-1-1.html
1
2一六三.犬牙手雷(扔犬牙炸倒一大片)
3
4 用MT管理器打开游戏目录/assets/scripts/prefabs/houndstooth.lua文件,在inst:AddComponent("inspectable")的下一行插入以下内容:
5
6local function onhit(inst, attacker, target)
7 SpawnPrefab("collapse_small").Transform:SetPosition(target.Transform:GetWorldPosition())
8 SpawnPrefab("explode_small").Transform:SetPosition(target.Transform:GetWorldPosition())
9 local pos = Vector3(target.Transform:GetWorldPosition())
10 GetClock():DoLightningLighting()
11 GetPlayer().components.playercontroller:ShakeCamera(target, "FULL", 0.7, 0.02, .5, 40)
12 inst.components.combat:DoAreaAttack(target, 8)
13 inst:Remove()
14end
15local function onthrown(inst, data)
16 inst.AnimState:SetOrientation( ANIM_ORIENTATION.OnGround )
17end
18 inst:AddComponent("weapon")
19 inst.components.weapon:SetDamage(3000)
20 inst.components.weapon:SetRange(15, 18)
21 inst:AddComponent("combat")
22 inst.components.combat:SetDefaultDamage(3000)
23 inst.components.combat.playerdamagepercent = 0
24 inst:AddComponent("equippable")
25 inst.components.equippable.equipstack = true
26 inst:AddComponent("projectile")
27 inst.components.projectile:SetSpeed(60)
28 inst.components.projectile:SetOnHitFn(onhit)
29 inst:ListenForEvent("onthrown", onthrown)
30
31 即可在装备犬牙时,对一群敌人扔出(远距离对敌人按鼠标左键)炸倒一大片。犬牙手雷不会伤到主角