@@ -815,18 +815,23 @@ end
815
815
816
816
-- Get any Actor from the CPU's native tech
817
817
function BrainvsBrain :CreateRandomInfantry (team , mode )
818
- local Passenger = RandomAHuman (" Actors" , self .TechName [team ])
818
+ local Passenger = RandomAHuman (" Actors" , self .TechName [team ])
819
819
if Passenger then
820
820
Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Primary" , self .TechName [team ]))
821
821
Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Secondary" , self .TechName [team ]))
822
822
823
- if math.random () < 0.4 then
824
- Passenger :AddInventoryItem (RandomTDExplosive (" Bombs - Grenades" , self .TechName [team ]))
825
- if math.random () < 0.5 then
826
- Passenger :AddInventoryItem (RandomTDExplosive (" Bombs - Grenades" , self .TechName [team ]))
827
- end
828
- elseif math.random () < 0.5 then
829
- Passenger :AddInventoryItem (RandomHDFirearm (" Tools - Diggers" , self .TechName [team ]))
823
+ local rand = math.random ();
824
+ if rand < 0.25 then
825
+ Passenger :AddInventoryItem (RandomTDExplosive (" Bombs - Grenades" , self .TechName [team ]));
826
+ elseif rand < 0.50 then
827
+ Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Secondary" , self .TechName [team ]));
828
+ elseif rand < 0.75 then
829
+ Passenger :AddInventoryItem (RandomHeldDevice (" Shields" , self .TechName [team ]));
830
+ else
831
+ Passenger :AddInventoryItem (CreateHDFirearm (" Medikit" , " Base.rte" ));
832
+ end
833
+ if math.random () < 0.05 then
834
+ Passenger :AddInventoryItem (RandomHDFirearm (" Tools - Breaching" , self .TechName [team ]));
830
835
end
831
836
832
837
-- Set AI mode and team so it knows who and what to fight for!
@@ -837,13 +842,18 @@ function BrainvsBrain:CreateRandomInfantry(team, mode)
837
842
end
838
843
839
844
function BrainvsBrain :CreateLightInfantry (team , mode )
840
- local Passenger = RandomAHuman (" Actors - Light" , self .TechName [team ])
845
+ local Passenger = RandomAHuman (" Actors - Light" , self .TechName [team ])
841
846
if Passenger then
842
847
Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Light" , self .TechName [team ]))
843
848
Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Secondary" , self .TechName [team ]))
844
849
845
- if math.random () < 0.2 then
846
- Passenger :AddInventoryItem (RandomTDExplosive (" Bombs - Grenades" , self .TechName [team ]))
850
+ local rand = math.random ();
851
+ if rand < 0.5 then
852
+ Passenger :AddInventoryItem (RandomTDExplosive (" Bombs - Grenades" , self .TechName [team ]));
853
+ elseif rand < 0.8 then
854
+ Passenger :AddInventoryItem (CreateHDFirearm (" Medikit" , " Base.rte" ));
855
+ else
856
+ Passenger :AddInventoryItem (RandomHDFirearm (" Tools - Breaching" , self .TechName [team ]));
847
857
end
848
858
849
859
-- Set AI mode and team so it knows who and what to fight for!
855
865
856
866
function BrainvsBrain :CreateDefender (team )
857
867
local name = self .TechName [team ] or " Dummy"
858
- local Passenger = RandomAHuman (" Actors - Light" , name )
868
+ local Passenger = RandomAHuman (" Actors - Light" , name )
859
869
if Passenger then
860
870
Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Light" , name ))
861
871
Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Secondary" , name ))
@@ -872,19 +882,25 @@ function BrainvsBrain:CreateDefender(team)
872
882
end
873
883
874
884
function BrainvsBrain :CreateHeavyInfantry (team , mode )
875
- local Passenger = RandomAHuman (" Actors - Heavy" , self .TechName [team ])
885
+ local Passenger = RandomAHuman (" Actors - Heavy" , self .TechName [team ])
876
886
if Passenger then
877
887
Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Heavy" , self .TechName [team ]))
878
- Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Secondary" , self .TechName [team ]))
879
888
880
- if math.random () < 0.6 then
881
- Passenger :AddInventoryItem (RandomTDExplosive (" Bombs - Grenades" , self .TechName [team ]))
882
- Passenger :AddInventoryItem (RandomTDExplosive (" Bombs - Grenades" , self .TechName [team ]))
883
- if math.random () < 0.4 then
884
- Passenger :AddInventoryItem (RandomTDExplosive (" Bombs - Grenades" , self .TechName [team ]))
889
+ if math.random () < 0.3 then
890
+ Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Light" , self .TechName [team ]));
891
+ if math.random () < 0.25 then
892
+ Passenger :AddInventoryItem (RandomTDExplosive (" Bombs - Grenades" , self .TechName [team ]));
893
+ elseif math.random () < 0.35 then
894
+ Passenger :AddInventoryItem (CreateHDFirearm (" Medikit" , " Base.rte" ));
885
895
end
886
896
else
887
- Passenger :AddInventoryItem (RandomHDFirearm (" Tools - Diggers" , self .TechName [team ]))
897
+ Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Secondary" , self .TechName [team ]));
898
+ if math.random () < 0.3 then
899
+ Passenger :AddInventoryItem (RandomHeldDevice (" Shields" , self .TechName [team ]));
900
+ Passenger :AddInventoryItem (CreateHDFirearm (" Medikit" , " Base.rte" ));
901
+ else
902
+ Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Secondary" , self .TechName [team ]));
903
+ end
888
904
end
889
905
890
906
-- Set AI mode and team so it knows who and what to fight for!
@@ -895,11 +911,20 @@ function BrainvsBrain:CreateHeavyInfantry(team, mode)
895
911
end
896
912
897
913
function BrainvsBrain :CreateMediumInfantry (team , mode )
898
- local Passenger = RandomAHuman (" Actors - Heavy" , self .TechName [team ])
914
+ local Passenger = RandomAHuman (" Actors - Heavy" , self .TechName [team ])
899
915
if Passenger then
900
916
Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Light" , self .TechName [team ]))
901
917
Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Secondary" , self .TechName [team ]))
902
918
919
+ if math.random () < 0.3 then
920
+ Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Secondary" , self .TechName [team ]));
921
+ else
922
+ Passenger :AddInventoryItem (RandomTDExplosive (" Bombs - Grenades" , self .TechName [team ]));
923
+ end
924
+ if math.random () < 0.5 then
925
+ Passenger :AddInventoryItem (CreateHDFirearm (" Medikit" , " Base.rte" ));
926
+ end
927
+
903
928
-- Set AI mode and team so it knows who and what to fight for!
904
929
Passenger .AIMode = mode or Actor .AIMODE_GOTO
905
930
Passenger .Team = team
@@ -908,14 +933,18 @@ function BrainvsBrain:CreateMediumInfantry(team, mode)
908
933
end
909
934
910
935
function BrainvsBrain :CreateScoutInfantry (team , mode )
911
- local Passenger = RandomAHuman (" Actors - Light" , self .TechName [team ])
936
+ local Passenger = RandomAHuman (" Actors - Light" , self .TechName [team ])
912
937
if Passenger then
938
+ if math.random () < 0.15 then
939
+ Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Sniper" , self .TechName [team ]))
940
+ end
913
941
Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Secondary" , self .TechName [team ]))
914
942
915
- if math.random () < 0.6 then
916
- Passenger :AddInventoryItem (RandomTDExplosive (" Bombs - Grenades" , self .TechName [team ]))
917
- else
943
+ if math.random () < 0.3 then
918
944
Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Secondary" , self .TechName [team ]))
945
+ else
946
+ Passenger :AddInventoryItem (RandomTDExplosive (" Bombs - Grenades" , self .TechName [team ]))
947
+ Passenger :AddInventoryItem (CreateHDFirearm (" Medikit" , " Base.rte" ))
919
948
end
920
949
921
950
-- Set AI mode and team so it knows who and what to fight for!
@@ -925,44 +954,27 @@ function BrainvsBrain:CreateScoutInfantry(team, mode)
925
954
end
926
955
end
927
956
928
- function BrainvsBrain :CreateSniper (team , mode )
929
- local Passenger
930
- if math.random () < 0.7 then
931
- Passenger = RandomAHuman (" Actors - Light" , self .TechName [team ])
932
- else
933
- Passenger = RandomAHuman (" Actors - Heavy" , self .TechName [team ])
934
- end
935
-
936
- if Passenger then
937
- Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Sniper" , self .TechName [team ]))
938
- Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Secondary" , self .TechName [team ]))
939
-
940
- -- Set AI mode and team so it knows who and what to fight for!
941
- Passenger .AIMode = mode or Actor .AIMODE_GOTO
942
- Passenger .Team = team
943
- return Passenger
944
- end
945
- end
946
-
947
957
function BrainvsBrain :CreateEngineer (team , mode )
948
958
local Passenger = RandomAHuman (" Actors - Light" , self .TechName [team ])
949
959
if Passenger then
950
- Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Light" , self .TechName [team ]))
951
- Passenger :AddInventoryItem (CreateHDFirearm (" Medium Digger" , " Base.rte" ))
960
+ if math.random () < 0.7 then
961
+ Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Light" , self .TechName [team ]));
962
+ else
963
+ Passenger :AddInventoryItem (RandomHDFirearm (" Weapons - Secondary" , self .TechName [team ]));
964
+ local rand = math.random ();
965
+ if rand < 0.2 then
966
+ Passenger :AddInventoryItem (RandomHeldDevice (" Shields" , self .TechName [team ]));
967
+ elseif rand < 0.4 then
968
+ Passenger :AddInventoryItem (CreateHDFirearm (" Medikit" , " Base.rte" ));
969
+ else
970
+ Passenger :AddInventoryItem (RandomTDExplosive (" Tools - Breaching" , self .TechName [team ]));
971
+ end
972
+ end
973
+ Passenger :AddInventoryItem (RandomHDFirearm (" Tools - Diggers" , self .TechName [team ]));
952
974
953
975
-- Set AI mode and team so it knows who and what to fight for!
954
976
Passenger .AIMode = mode or Actor .AIMODE_GOLDDIG
955
977
Passenger .Team = team
956
978
return Passenger
957
979
end
958
- end
959
-
960
- function BrainvsBrain :CreateAntiAir (team , mode )
961
- local Passenger = RandomACrab (" Anti-Air" , self .TechName [team ])
962
- if Passenger then
963
- -- Set AI mode and team so it knows who and what to fight for!
964
- Passenger .AIMode = mode or Actor .AIMODE_SENTRY
965
- Passenger .Team = team
966
- return Passenger
967
- end
968
- end
980
+ end
0 commit comments