- Joined
- Nov 13, 2006
- Messages
- 1,814
1. Respawn unit in last position, with same faceing angle than was when he died and same hero level if he is a hero unit
map init
Requiment the unit indexer
Requiment the unit indexer
map init
-
Unit dieing
-
Events
-
Unit - A unit owned by Neutral Hostile Dies
-
-
Conditions
-
Actions
-
Custom script: local unit u = GetDyingUnit()
-
Custom script: local integer utype=GetUnitTypeId(u)
-
Custom script: local real ang = GetUnitFacing(u)
-
Custom script: local integer herolv = GetHeroLevel(u)
-
Custom script: local real x = GetUnitX(u)
-
Custom script: local real y = GetUnitY(u)
-
Wait 2.00 seconds
-
Custom script: call RemoveUnit(u)
-
Custom script: set u = CreateUnit(GetTriggerPlayer(),utype,x,y,ang)
-
Custom script: if herolv > 1 then
-
Custom script: call SetHeroLevel(u,herolv,false)
-
Custom script: endif
-
Custom script: set u = null
-
-
map init
-
Define regions
-
Events
-
Map initialization
-
-
Conditions
-
Actions
-
Set Regions[0] = Forest <gen>
-
Set Regions[1] = Mountain <gen>
-
Set Regions[2] = Desert <gen>
-
-------- u can declare here the regions, then check the unit point values in object editor-units --------
-
-
-
Unit dieing
-
Events
-
Unit - A unit owned by Neutral Hostile Dies
-
-
Conditions
-
Actions
-
Custom script: local unit u = GetDyingUnit()
-
Custom script: local integer utype=GetUnitTypeId(u)
-
Custom script: local real ang = GetUnitFacing(u)
-
Custom script: local integer pv = GetUnitPointValueByType(utype)
-
Custom script: local integer herolv = GetHeroLevel(u)
-
Custom script: local real x = GetRandomReal(GetRectMinX(udg_Regions[pv]), GetRectMaxX(udg_Regions[pv]))
-
Custom script: local real y = GetRandomReal(GetRectMinY(udg_Regions[pv]), GetRectMaxY(udg_Regions[pv]))
-
Wait 2.00 seconds
-
Custom script: call RemoveUnit(u)
-
Custom script: set u = CreateUnit(GetTriggerPlayer(),utype,x,y,ang)
-
Custom script: if herolv > 1 then
-
Custom script: call SetHeroLevel(u,herolv,false)
-
Custom script: endif
-
Custom script: set u = null
-
-
Requiment the unit indexer
-
Set the unit coordinate
-
Events
-
Game - UnitIndexEvent becomes Equal to 1.00
-
-
Conditions
-
Actions
-
Custom script: local unit u = udg_UDexUnits[udg_UDex]
-
Custom script: set udg_CreepX[udg_UDex]=GetUnitX(u)
-
Custom script: set udg_CreepY[udg_UDex]=GetUnitY(u)
-
Custom script: set udg_CreepAng[udg_UDex] = GetUnitFacing(u)
-
Custom script: set u = null
-
-
-
Respawn
-
Events
-
Unit - A unit owned by Neutral Hostile Dies
-
-
Conditions
-
Actions
-
Custom script: local unit u = GetDyingUnit()
-
Custom script: local integer id = GetUnitTypeId(u)
-
Custom script: local integer lv = GetHeroLevel(u)
-
Custom script: local integer cv = GetUnitUserData(u)
-
Wait 5.00 seconds
-
Custom script: call RemoveUnit( u )
-
Custom script: set u = CreateUnit(GetTriggerPlayer(),id,udg_CreepX[cv],udg_CreepY[cv],udg_CreepAng[cv])
-
Custom script: if lv > 1 then
-
Custom script: call SetHeroLevel(u,lv,false)
-
Custom script: endif
-
Custom script: set u = null
-
-
Requiment the unit indexer
map init
-
Mapinit
-
Events
-
Map initialization
-
-
Conditions
-
Actions
-
Custom script: set udg_CreepTable = InitHashtable()
-
-
-
Set the unit coordinate
-
Events
-
Game - UnitIndexEvent becomes Equal to 1.00
-
-
Conditions
-
Actions
-
Custom script: local unit u = udg_UDexUnits[udg_UDex]
-
Custom script: call SaveReal(udg_CreepTable, udg_UDex, 1, GetUnitX(u))
-
Custom script: call SaveReal(udg_CreepTable, udg_UDex, 2, GetUnitY(u))
-
Custom script: call SaveReal(udg_CreepTable, udg_UDex, 3, GetUnitFacing(u))
-
Custom script: set u = null
-
-
-
Respawn
-
Events
-
Unit - A unit owned by Neutral Hostile Dies
-
-
Conditions
-
Actions
-
Custom script: local unit u = GetDyingUnit()
-
Custom script: local integer id = GetUnitTypeId(u)
-
Custom script: local integer lv = GetHeroLevel(u)
-
Custom script: local integer cv = GetUnitUserData(u)
-
Custom script: local real x = LoadReal(udg_CreepTable, cv, 1)
-
Custom script: local real y = LoadReal(udg_CreepTable, cv, 2)
-
Custom script: local real ang = LoadReal(udg_CreepTable, cv, 3)
-
Wait 5.00 seconds
-
Custom script: call RemoveUnit( u )
-
Custom script: set u = CreateUnit(GetTriggerPlayer(),id,x,y,ang)
-
Custom script: if lv > 1 then
-
Custom script: call SetHeroLevel(u,lv,false)
-
Custom script: endif
-
Custom script: set u = null
-
-