75 {751, 543}, {3889, 907}} |
75 {751, 543}, {3889, 907}} |
76 cyborgsDir = {"Right", "Right", "Left", "Right", "Right", "Left"} |
76 cyborgsDir = {"Right", "Right", "Left", "Right", "Right", "Left"} |
77 |
77 |
78 leaderPos = {3474, 151} |
78 leaderPos = {3474, 151} |
79 leaderDir = "Left" |
79 leaderDir = "Left" |
|
80 |
|
81 cyborgTeamName = nil |
|
82 nativesTeamName = nil |
|
83 cannibalsTeamName = nil |
|
84 hedgecogsTeamName = nil |
|
85 leaderTeamName = nil |
80 |
86 |
81 -----------------------------Variables--------------------------------- |
87 -----------------------------Variables--------------------------------- |
82 natives = {} |
88 natives = {} |
83 origNatives = {} |
89 origNatives = {} |
84 |
90 |
435 |
441 |
436 function WinMission() |
442 function WinMission() |
437 if progress and progress<9 then |
443 if progress and progress<9 then |
438 SaveCampaignVar("Progress", "9") |
444 SaveCampaignVar("Progress", "9") |
439 end |
445 end |
440 DismissTeam(loc("011101001")) |
446 DismissTeam(cyborgTeamName) |
441 EndTurn(true) |
447 EndTurn(true) |
442 end |
448 end |
443 -----------------------------Misc-------------------------------------- |
449 -----------------------------Misc-------------------------------------- |
444 function HideHedge(hedge) |
450 function HideHedge(hedge) |
445 if hedgeHidden[hedge] ~= true then |
451 if hedgeHidden[hedge] ~= true then |
517 AddAmmo(leader, amTeleport, 100) |
523 AddAmmo(leader, amTeleport, 100) |
518 end |
524 end |
519 end |
525 end |
520 |
526 |
521 function AddHogs() |
527 function AddHogs() |
522 AddTeam(loc("011101001"), -1, "ring", "UFO", "Robot", "cm_binary") |
528 cyborgTeamName = AddTeam(loc("011101001"), -1, "ring", "UFO", "Robot", "cm_binary") |
523 cyborg = AddHog(loc("Unit 334a$7%;.*"), 0, 200, "cyborg1") |
529 cyborg = AddHog(loc("Unit 334a$7%;.*"), 0, 200, "cyborg1") |
524 |
530 |
525 AddTeam(loc("Natives"), -2, "Bone", "Island", "HillBilly", "cm_birdy") |
531 nativesTeamName = AddTeam(loc("Natives"), -2, "Bone", "Island", "HillBilly", "cm_birdy") |
526 -- There are 3-4 natives in this mission |
532 -- There are 3-4 natives in this mission |
527 natives[1] = AddHog(nativeNames[leaksNum], 0, 100, nativeHats[leaksNum]) |
533 natives[1] = AddHog(nativeNames[leaksNum], 0, 100, nativeHats[leaksNum]) |
528 if m5DeployedNum ~= leaksNum and m8DeployedLeader == 0 then |
534 if m5DeployedNum ~= leaksNum and m8DeployedLeader == 0 then |
529 natives[2] = AddHog(nativeNames[m5DeployedNum], 0, 100, nativeHats[m5DeployedNum]) |
535 natives[2] = AddHog(nativeNames[m5DeployedNum], 0, 100, nativeHats[m5DeployedNum]) |
530 end |
536 end |
538 cannibalsLeft = cannibalsNum |
544 cannibalsLeft = cannibalsNum |
539 for i = 1, nativesNum do |
545 for i = 1, nativesNum do |
540 table.insert(players, natives[i]) |
546 table.insert(players, natives[i]) |
541 end |
547 end |
542 |
548 |
543 AddTeam(loc("Cannibals"), -2, "Bone", "Island", "HillBilly", "cm_birdy") |
549 cannibalsTeamName = AddTeam(loc("Cannibals"), -2, "Bone", "Island", "HillBilly", "cm_birdy") |
544 for i = 1, cannibalsNum do |
550 for i = 1, cannibalsNum do |
545 cannibals[i] = AddHog(cannibalNames[i], 0, 100, "Zombi") |
551 cannibals[i] = AddHog(cannibalNames[i], 0, 100, "Zombi") |
546 table.insert(players, cannibals[i]) |
552 table.insert(players, cannibals[i]) |
547 end |
553 end |
548 playersNum = #players |
554 playersNum = #players |
549 playersLeft = playersNum |
555 playersLeft = playersNum |
550 |
556 |
551 AddTeam(loc("Hedge-cogs"), -9, "ring", "UFO", "Robot", "cm_cyborg") |
557 hedgecogsTeamName = AddTeam(loc("Hedge-cogs"), -9, "ring", "UFO", "Robot", "cm_cyborg") |
552 for i = 1, cyborgsNum do |
558 for i = 1, cyborgsNum do |
553 cyborgs[i] = AddHog(cyborgNames[i], 2, 80, "cyborg2") |
559 cyborgs[i] = AddHog(cyborgNames[i], 2, 80, "cyborg2") |
554 end |
560 end |
555 |
561 |
556 if m8EnemyFled == 1 then |
562 if m8EnemyFled == 1 then |
557 AddTeam(loc("Leader"), -9, "ring", "UFO", "Robot", "cm_cyborg") |
563 leaderTeamName = AddTeam(loc("Leader"), -9, "ring", "UFO", "Robot", "cm_cyborg") |
558 if m8Scene == denseScene then |
564 if m8Scene == denseScene then |
559 leader = AddHog(loc("Dense Cloud"), 2, 200, nativeHats[denseNum]) |
565 leader = AddHog(loc("Dense Cloud"), 2, 200, nativeHats[denseNum]) |
560 elseif m8Scene == waterScene then |
566 elseif m8Scene == waterScene then |
561 leader = AddHog(loc("Fiery Water"), 2, 200, nativeHats[waterNum]) |
567 leader = AddHog(loc("Fiery Water"), 2, 200, nativeHats[waterNum]) |
562 elseif m8Scene == princessScene then |
568 elseif m8Scene == princessScene then |
626 end |
632 end |
627 |
633 |
628 function onGearDelete(gear) |
634 function onGearDelete(gear) |
629 gearDead[gear] = true |
635 gearDead[gear] = true |
630 if GetGearType(gear) == gtHedgehog then |
636 if GetGearType(gear) == gtHedgehog then |
631 if GetHogTeamName(gear) == loc("Natives") then |
637 if GetHogTeamName(gear) == nativesTeamName then |
632 for i = 1, nativesLeft do |
638 for i = 1, nativesLeft do |
633 if natives[i] == gear then |
639 if natives[i] == gear then |
634 table.remove(natives, i) |
640 table.remove(natives, i) |
635 table.remove(players, i) |
641 table.remove(players, i) |
636 nativesLeft = nativesLeft - 1 |
642 nativesLeft = nativesLeft - 1 |
637 playersLeft = playersLeft - 1 |
643 playersLeft = playersLeft - 1 |
638 end |
644 end |
639 end |
645 end |
640 elseif GetHogTeamName(gear) == loc("Cannibals") then |
646 elseif GetHogTeamName(gear) == cannibalsTeamName then |
641 for i = 1, cannibalsLeft do |
647 for i = 1, cannibalsLeft do |
642 if cannibals[i] == gear then |
648 if cannibals[i] == gear then |
643 table.remove(cannibals, i) |
649 table.remove(cannibals, i) |
644 table.remove(players, nativesLeft + i) |
650 table.remove(players, nativesLeft + i) |
645 cannibalsLeft = cannibalsLeft - 1 |
651 cannibalsLeft = cannibalsLeft - 1 |
646 playersLeft = playersLeft - 1 |
652 playersLeft = playersLeft - 1 |
647 end |
653 end |
648 end |
654 end |
649 elseif GetHogTeamName(gear) == loc("Hedge-cogs") then |
655 elseif GetHogTeamName(gear) == hedgecogsTeamName then |
650 for i = 1, cyborgsLeft do |
656 for i = 1, cyborgsLeft do |
651 if cyborgs[i] == gear then |
657 if cyborgs[i] == gear then |
652 table.remove(cyborgs, i) |
658 table.remove(cyborgs, i) |
653 end |
659 end |
654 end |
660 end |
682 playersDeadFresh = false |
688 playersDeadFresh = false |
683 FailedMission() |
689 FailedMission() |
684 elseif cyborgsDeadFresh then |
690 elseif cyborgsDeadFresh then |
685 cyborgsDeadFresh = false |
691 cyborgsDeadFresh = false |
686 WonMission() |
692 WonMission() |
687 elseif nativesDeadFresh and GetHogTeamName(CurrentHedgehog) == loc("Cannibals") then |
693 elseif nativesDeadFresh and GetHogTeamName(CurrentHedgehog) == cannibalsTeamName then |
688 AnimSay(CurrentHedgehog, loc("Your deaths will be avenged, Natives!"), SAY_SHOUT, 0) |
694 AnimSay(CurrentHedgehog, string.format(loc("Your deaths will be avenged, %s!"), nativesTeamName), SAY_SHOUT, 0) |
689 nativesDeadFresh = false |
695 nativesDeadFresh = false |
690 elseif cannibalsDeadFresh and GetHogTeamName(CurrentHedgehog) == loc("Natives") then |
696 elseif cannibalsDeadFresh and GetHogTeamName(CurrentHedgehog) == nativesTeamName then |
691 AnimSay(CurrentHedgehog, loc("Your deaths will be avenged, Cannibals!"), SAY_SHOUT, 0) |
697 AnimSay(CurrentHedgehog, string.format(loc("Your deaths will be avenged, %s!"), cannibalsTeamName), SAY_SHOUT, 0) |
692 cannibalsDeadFresh = false |
698 cannibalsDeadFresh = false |
693 end |
699 end |
694 end |
700 end |
695 |
701 |
696 function onPrecise() |
702 function onPrecise() |