- Joined
- Jul 22, 2015
- Messages
- 3,484
...but I hope someone can find it useful in the non-approved section.
Welp that's enough for me
Init

Events


Map initialization

Conditions

Actions


Set click_trigger = Click <gen>


Set hover_trigger = Hover <gen>


Visibility - Disable fog of war


Visibility - Disable black mask


Camera - Set the camera bounds for Player 1 (Red) to MAP <gen>


Set mercs[1] = Paladin


Set mercs[2] = Peasant


Set mercs[3] = Footman


Set mercs[4] = Spell Breaker


Set mercs[5] = Rifleman


Set mercs[6] = Knight


Set gold_cost[1] = 500


Set gold_cost[2] = 70


Set gold_cost[3] = 120


Set gold_cost[4] = 175


Set gold_cost[5] = 140


Set gold_cost[6] = 230


Set lumber_cost[1] = 100


Set lumber_cost[2] = 0


Set lumber_cost[3] = 0


Set lumber_cost[4] = 30


Set lumber_cost[5] = 25


Set lumber_cost[6] = 55


Set merc_regions[1] = Region 038 <gen>


Set merc_regions[2] = Region 038 Copy <gen>


Set merc_regions[3] = Region 038 Copy 2 <gen>


Set merc_regions[4] = Region 038 Copy 3 <gen>


Set merc_regions[5] = Region 038 Copy 4 <gen>


Set merc_regions[6] = Region 038 Copy 5 <gen>


Set click_sound = BigButtonClick <gen>


Set pay_sound = ReceiveGold <gen>


Custom script: call FullscreenQuest.Init()
struct FullscreenQuest
static trackable accept
static trackable reject
static trackable array plus
static trackable array minus
static location array l
static location array display
static location array goldLoc
static location array lumberLoc
static location totalGoldLoc
static location totalLumberLoc
static integer array number
static integer goldCount = 0
static integer lumberCount = 0
static string model = "war3mapImported\\4x4Trackable.mdl"
static texttag array tag
static texttag array goldTag
static texttag array lumberTag
static texttag totalGold
static texttag totalLumber
static integer counter = 0
static integer max = 6
static method Init takes nothing returns nothing
local integer i = 1
//
set totalGoldLoc = GetRectCenter(gg_rct_Gold_Loc)
set totalLumberLoc = GetRectCenter(gg_rct_Lumber_Loc)
//
set l[1] = GetRectCenter(gg_rct_Region_001)
set l[2] = GetRectCenter(gg_rct_Region_000)
//
set l[3] = GetRectCenter(gg_rct_Region_002)
set l[4] = GetRectCenter(gg_rct_Region_003)
set l[5] = GetRectCenter(gg_rct_Region_004)
set l[6] = GetRectCenter(gg_rct_Region_005)
set l[7] = GetRectCenter(gg_rct_Region_006)
set l[8] = GetRectCenter(gg_rct_Region_007)
set l[9] = GetRectCenter(gg_rct_Region_008)
set l[10] = GetRectCenter(gg_rct_Region_009)
set l[11] = GetRectCenter(gg_rct_Region_010)
set l[12] = GetRectCenter(gg_rct_Region_011)
set l[13] = GetRectCenter(gg_rct_Region_012)
set l[14] = GetRectCenter(gg_rct_Region_013)
//
set goldLoc[1] = GetRectCenter(gg_rct_Gold_01)
set goldLoc[2] = GetRectCenter(gg_rct_Gold_02)
set goldLoc[3] = GetRectCenter(gg_rct_Gold_03)
set goldLoc[4] = GetRectCenter(gg_rct_Gold_04)
set goldLoc[5] = GetRectCenter(gg_rct_Gold_05)
set goldLoc[6] = GetRectCenter(gg_rct_Gold_06)
//
set lumberLoc[1] = GetRectCenter(gg_rct_Lumber_01)
set lumberLoc[2] = GetRectCenter(gg_rct_Lumber_02)
set lumberLoc[3] = GetRectCenter(gg_rct_Lumber_03)
set lumberLoc[4] = GetRectCenter(gg_rct_Lumber_04)
set lumberLoc[5] = GetRectCenter(gg_rct_Lumber_05)
set lumberLoc[6] = GetRectCenter(gg_rct_Lumber_06)
//
set display[1] = GetRectCenter(gg_rct_Start_01)
set display[2] = GetRectCenter(gg_rct_Start_02)
set display[3] = GetRectCenter(gg_rct_Start_03)
set display[4] = GetRectCenter(gg_rct_Start_04)
set display[5] = GetRectCenter(gg_rct_Start_05)
set display[6] = GetRectCenter(gg_rct_Start_06)
//
set accept = newTrackable()
set reject = newTrackable()
//
loop
exitwhen i > max
set minus[i] = newTrackable()
set plus[i] = newTrackable()
set number[i] = 0
set tag[i] = CreateTextTagLocBJ(I2S(number[i]), display[i], 0, 12, 255,255,255,255)
set goldTag[i] = CreateTextTagLocBJ(I2S(udg_gold_cost[i]), goldLoc[i], 0, 12, 255,255, 0, 255)
set lumberTag[i] = CreateTextTagLocBJ(I2S(udg_lumber_cost[i]), lumberLoc[i], 0, 12, 0, 255, 0,255)
set i = i + 1
endloop
set totalGold = CreateTextTagLocBJ(I2S(goldCount), totalGoldLoc, 0, 12, 255,255,255,255)
set totalLumber = CreateTextTagLocBJ(I2S(lumberCount), totalLumberLoc, 0, 12, 255,255,255,255)
endmethod
static method newTrackable takes nothing returns trackable
local destructable d
local trackable t
local real x
local real y
set counter = counter + 1
set x = GetLocationX(l[counter])
set y = GetLocationY(l[counter])
set d = CreateDestructableZ( 'OTip', x, y, 0, 0.00, 1, 0 )
set t = CreateTrackable(model, x, y, 270)
call RemoveDestructable(d)
call TriggerRegisterTrackableHitEvent(udg_click_trigger, t)
call TriggerRegisterTrackableTrackEvent(udg_hover_trigger, t)
return t
endmethod
static method onInit takes nothing returns nothing
endmethod
static method create takes nothing returns thistype
local thistype this = thistype.allocate()
return this
endmethod
method Update takes nothing returns nothing
endmethod
endstruct
Click

Events

Conditions

Actions


Custom script: local trackable tr = GetTriggeringTrackable()


Custom script: local integer i = 0


Custom script: if(tr == FullscreenQuest.accept) then


Sound - Play pay_sound


Set s = Your hired [gray]mercenaries[/gray] has arrived!


Custom script: set udg_s = ConvertString(udg_s)


Game - Display to (All players) the text: s


Custom script: set udg_count_check = FullscreenQuest.max


For each (Integer A) from 1 to count_check, do (Actions)



Loop - Actions




Custom script: set udg_number = FullscreenQuest.number[bj_forLoopAIndex]




For each (Integer B) from 1 to number, do (Actions)





Loop - Actions






Unit - Create 1 mercs[(Integer A)] for Player 1 (Red) at (Center of Spawn <gen>) facing Default building facing degrees






Unit - Order (Last created unit) to Attack-Move To (Center of Order <gen>)


Cinematic - Ping minimap for Player Group - Player 1 (Red) at (Center of Spawn <gen>) for 2.00 seconds


Custom script: endif


Custom script: if(tr == FullscreenQuest.reject) then


Sound - Stop (Last played sound) Immediately


Sound - Play click_sound


Cinematic - Fade out and back in over 1.00 seconds using texture Black Mask and color (0.00%, 0.00%, 0.00%) with 0.00% transparency


Wait 0.50 seconds


Camera - Set the camera bounds for Player 1 (Red) to MAP <gen>


Camera - Apply cam for Player 1 (Red) over 0.00 seconds


Custom script: endif


Custom script: loop


Custom script: exitwhen i >= FullscreenQuest.max


Custom script: set i = i + 1


Custom script: if(tr == FullscreenQuest.plus[i]) then


Sound - Play click_sound


Custom script: if udg_current_loc != i then


Special Effect - Destroy effect


Custom script: call AddSpecialEffectLocBJ(GetRectCenter(udg_merc_regions[i]), "selector.mdl" )


Set effect = (Last created special effect)


Custom script: set udg_current_loc = i


Custom script: endif


Custom script: set FullscreenQuest.number[i] = FullscreenQuest.number[i] + 1


Custom script: call SetTextTagTextBJ(FullscreenQuest.tag[i], I2S(FullscreenQuest.number[i]), 12)


Custom script: set FullscreenQuest.goldCount = FullscreenQuest.goldCount + udg_gold_cost[i]


Custom script: call SetTextTagTextBJ(FullscreenQuest.totalGold, I2S(FullscreenQuest.goldCount),12)


Custom script: set FullscreenQuest.lumberCount = FullscreenQuest.lumberCount + udg_lumber_cost[i]


Custom script: call SetTextTagTextBJ(FullscreenQuest.totalLumber, I2S(FullscreenQuest.lumberCount),12)


Custom script: endif


Custom script: if(tr == FullscreenQuest.minus[i]) then


Sound - Stop (Last played sound) Immediately


Sound - Play click_sound


Custom script: if udg_current_loc != i then


Special Effect - Destroy effect


Custom script: call AddSpecialEffectLocBJ(GetRectCenter(udg_merc_regions[i]), "selector.mdl" )


Set effect = (Last created special effect)


Custom script: set udg_current_loc = i


Custom script: endif


Custom script: if FullscreenQuest.number[i] > 0 then


Custom script: set FullscreenQuest.number[i] = FullscreenQuest.number[i] - 1


Custom script: call SetTextTagTextBJ(FullscreenQuest.tag[i], I2S(FullscreenQuest.number[i]), 10)


Custom script: set FullscreenQuest.goldCount = FullscreenQuest.goldCount - udg_gold_cost[i]


Custom script: call SetTextTagTextBJ(FullscreenQuest.totalGold, I2S(FullscreenQuest.goldCount),10)


Custom script: set FullscreenQuest.lumberCount = FullscreenQuest.lumberCount - udg_lumber_cost[i]


Custom script: call SetTextTagTextBJ(FullscreenQuest.totalLumber, I2S(FullscreenQuest.lumberCount),10)


Custom script: endif


Custom script: endif


Custom script: endloop