娱乐对战做了一个阵型强化(侧背受攻击受到额外伤害)
魔兽地图编辑器吧
全部回复
仅看楼主
level 1
maxpaynebupt 楼主
还有一个老兵系统的,用到了BonusMod,其实就是用unituserdata来存储小兵的经验,然后每次得到经验就给小兵加一点bonus,并把小兵体积变大一点。
backattack用到了GUI Friendly Damage Detection,就是发生伤害的时候计算攻击者跟被攻击者的face角度来附加额外伤害。
function Trig_Backattack_______uConditions takes nothing returns boolean
return ((IsUnitType(udg_GDD_DamagedUnit, UNIT_TYPE_STRUCTURE) == false))
endfunction
function Trig_Backattack_______uActions takes nothing returns nothing
if ((IsUnitType(udg_GDD_DamageSource, UNIT_TYPE_STRUCTURE) == true)) then
set udg_attackfactor=1.5*udg_GDD_Damage*(1-RAbsBJ(GetUnitFacing(udg_GDD_DamagedUnit)-AngleBetweenPoints(GetUnitLoc(udg_GDD_DamageSource), GetUnitLoc(udg_GDD_DamagedUnit)))/180)
else
set udg_attackfactor=1.5*udg_GDD_Damage*(1-RAbsBJ(GetUnitFacing(udg_GDD_DamagedUnit)-GetUnitFacing(udg_GDD_DamageSource))/180)
endif
call DisableTrigger( GetTriggeringTrigger() )
call UnitDamageTargetBJ( GetTriggerUnit(), udg_GDD_DamagedUnit, udg_attackfactor, ATTACK_TYPE_MELEE, DAMAGE_TYPE_NORMAL )
call EnableTrigger( GetTriggeringTrigger() )
if ((udg_attackfactor >= 1.00)) then
call CreateTextTagUnitBJ( I2S(R2I(udg_attackfactor)), udg_GDD_DamageSource, 0, 10, 100, 0.00, 0.00, 0 )
call SetTextTagVelocityBJ( GetLastCreatedTextTag(), 64, 90 )
call SetTextTagPermanent( GetLastCreatedTextTag(), false )
call SetTextTagLifespan( GetLastCreatedTextTag(), 1.00 )
call SetTextTagFadepoint( GetLastCreatedTextTag(), 0.40 )
else
endif
endfunction
//===========================================================================
function InitTrig_Backattack_______u takes nothing returns nothing
set gg_trg_Backattack_______u = CreateTrigger()
#ifdef DEBUG
call YDWESaveTriggerName(gg_trg_Backattack_______u, "Backattack 复制")
#endif
call TriggerRegisterVariableEvent( gg_trg_Backattack_______u, "udg_GDD_Event", EQUAL, 0 )
call TriggerAddCondition(gg_trg_Backattack_______u, Condition(function Trig_Backattack_______uConditions))
call TriggerAddAction(gg_trg_Backattack_______u, function Trig_Backattack_______uActions)
endfunction
2014年04月23日 05点04分 1
level 11
侧背受攻击类型的系统,最容易遇到的问题是:我人在你前面,我的技能绕后打你;我人在你前面,我技能绕后打你,伤害却是和你同一个坐标的马甲单位造成的。
复杂的地图里判定很容易失真
2014年04月23日 05点04分 3
技能伤害可以不算,这个主要是在于大部队作战的时候,对普通攻击进行加成,这样阵型就极其重要,被包围的话,就算兵比对方多也可能战败,更有技巧性,不像现在除了拉兵跑路基本就是拼人数
2014年04月23日 05点04分
回复 maxpaynebupt :原来是战略类型的地图使用,那还好。我以为是用于偷袭的呢
2014年04月23日 05点04分
回复 嗯无心 :貌似所有人都忘记这是一款即时战略游戏鸟
2014年04月23日 05点04分
1