SHOW:
|
|
- or go back to the newest paste.
| 1 | --[[ | |
| 2 | _____________________________________________________________________ | |
| 3 | | | | |
| 4 | | ____ _____ | | |
| 5 | | |___ \ |_ _| ___ __ _ _ __ ___ ___ | | |
| 6 | | __) | | | / _ \ / _` | | '_ ` _ \ / __| | | |
| 7 | | / __/ | | | __/ | (_| | | | | | | | \__ \ | | |
| 8 | | |_____| |_| \___| \__,_| |_| |_| |_| |___/ | | |
| 9 | | ✸Created By - Ctmce✸ | | |
| 10 | | ✸Module version: v6.2✸ | | |
| 11 | | ✸Updated date: 09/27/2018✸ | | |
| 12 | |_____________________________________________________________________| | |
| 13 | ||
| 14 | --]] | |
| 15 | ||
| 16 | --[[ | |
| 17 | CMDS: | |
| 18 | 1. !team1 "playername" "playername" \\Assign players to team1 , ex: !team1 Ctmce Ziggy_z | |
| 19 | 2. !team2 "playername "playername" \\Assign players to team2 , ex: !team2 Ctmce Ziggy_z | |
| 20 | 3. !add team1 "playername" "playername" \\Adds the player team1. | |
| 21 | 4. !add team2 "playername" "playername" \\Adds the player team2. | |
| 22 | 5. !remove team1 "playername" "playername" \\Removes the player/'s from team1! | |
| 23 | 6. !remove team2 "playername" "playername" \\Removes the player/'s from team2! | |
| 24 | 7. !exit \\Closing the Admin Panel// | |
| 25 | 8. !start \\Shows the Admin Panel back// | |
| 26 | 9. !sp team1 23 \\Sets the points for team1 to 23 or whatever you choose! | |
| 27 | 10. !sp team2 15 \\Sets the points for team1 to 15 or whatever you choose! | |
| 28 | 11. !aj on / off \\Turns AutoJoin On and Off. | |
| 29 | 12. !pause //pauses the game , and shows the gui back ^^ | |
| 30 | --------------------------------- | |
| 31 | Total Commands Count: [13]. | |
| 32 | Total Bootcamp Maps Count: [276]. | |
| 33 | Total Racing Maps Count: [1423]. | |
| 34 | Total Hardcamp Maps Count: [360]. | |
| 35 | --------------------------------- | |
| 36 | ||
| 37 | TODO: | |
| 38 | 1. Make 4 teams! | |
| 39 | --]] | |
| 40 | ||
| 41 | --Admin/Game Setup-- | |
| 42 | local Admin = "Ctmce#0000" --Put your name here, so you'll be able to use the panel. | |
| 43 | local ScoreToWin = 5 --Type here the amount of points need to win the game(Leave it at the same number it is right now if you want to change it in the Setup Panel)-- | |
| 44 | local autoJoin = true | |
| 45 | local Respawn = false | |
| 46 | local team1Color = "Green" --List of colors ["Pink","Blue","Green","White"]-- | |
| 47 | local team2Color = "Blue" --List of colors ["Pink","Blue","Green","White"]-- | |
| 48 | local mod = "Bootcamp" | |
| 49 | --^^^^^^^^^^^^^^^^^^^CHANGE ONLY THE THINGS ABOVE^^^^^^^^^^^^^^^^^^^-- | |
| 50 | -------------- | |
| 51 | ||
| 52 | --DO NOT CHANGE THE SCRIPT!-- | |
| 53 | local teams = {Team1 = {}, Team2 = {}}
| |
| 54 | --Team score-- | |
| 55 | local teamScore = {Team1 = 0, Team2 = 0}
| |
| 56 | -------------- | |
| 57 | ---Maps--- | |
| 58 | local racingMaps = {"7025177","7046282","7047612","7049172","7053504","2283","2806","3154","72339","166705","237281","349389","103182","107544","112790","114122","117548","120152","122911","124359","130763","136966","138036","138678","407536","144468","144677","277731","146801","147436","148424","150692","152299","155168","156685","156847","6583596","159351","160762","161730","163682","164802","165112","165747","165843","5848412","167941","168776","380417","169892","171152","175205","176263","177236","177813","178545","178657","180191","180255","180274","180469","180509","180619","181312","184110","563303","185760","185774","186604","190026","191201","191716","191753","192391","192566","193009","193588","193936","195720","196433","196468","197219","197501","198549","198715","199219","201323","3679666","206810","208058","208162","208914","209315","209708","209799","210188","211528","211565","211885","212542","213331","213697","213933","214037","214660","214775","215938","216439","216505","216553","216735","217282","217881","217900","219548","220500","222098","223293","223810","223986","224441","225017","226069","226879","226883","227417","227851","228462","229814","229827","229830","229834","229835","229944","230510","230741","231254","231694","231905","232140","232274","232451","232699","232791","233230","233345","233398","233687","234039","234502","234959","235034","235501","235651","236146","237000","237041","237263","237269","237278","237321","237744","238380","238791","239626","239880","240544","240548","240973","241211","241295","242708","243279","244006","244699","244888","245223","246790","246973","247815","247818","248098","250610","251459","252759","252806","253883","254291","255098","255542","255893","258717","259604","259716","259833","260024","260292","260338","260377","260384","260678","261078","261172","261720","261959","262144","262212","262239","263163","263182","263624","263907","264132","264232","264348","235221","266704","266765","266807","266854","266913","266930","267187","267597","269337","270668","270819","271523","273434","274321","275017","275514","277687","277784","278506","278916","279100","279256","280382","280896","281730","282101","282434","282694","283526","283715","283874","284299","285752","286333","287268","289821","291628","292348","292614","293065","294522","294943","299002","299503","29971","300055","301315","302936","304356","305677","306213","308280","308435","308694","308711","308992","309029","309057","309169","309834","312713","313245","314159","314205","315801","316289","317696","317754","317779","318378","318813","319524","319841","321339","321712","321814","321906","322771","323115","323366","323600","324355","326585","327254","327266","330441","332210","332290","332467","333277","333656","333837","335507","337581","337774","339272","339418","339643","339896","340069","340901","341116","341239","344361","344865","344952","345257","245312","345943","348479","348801","349140","4581354","349984","350251","350519","352381","352710","352885","354616","354878","355658","355676","355769","355957","356722","356982","357328","357428","359055","359521","359901","360201","6414689","360273","360365","361382","362549","363411","363625","363638","363822","364186","364998","1512355","365464","365652","365774","365464","365652","365774","367520","369160","369230","370444","370850","371076","371078","372970","373511","375381","378826","379326","379550","379745","379866","381043","381287","381305","381569","381669","382977","384206","384869","385203","385295","386029","386046","386959","387012","387180","387270","387290","387638","388447","389582","391625","391693","391831","391868","391990","392446","392492","392913","393675","393851","394890","395459","395585","395607","396223","396332","396347","396645","396861","397296","397501","397812","397938","398011","398041","398081","398942","399633","399673","400429","400666","400866","5886096","401778","401945","401995","402214","402239","402453","402936","403698","403910","404440","404590","405075","405295","405339","405497","405679","405833","405955","406266","406486","406881","406982","407165","407230","407294","407455","407457","407488","407495","6127809","407686","407746","408978","409199","410230","410532","410565","410608","410736","410813","412211","412316","412657","412752","413408","414188","414460","414899","416015","416142","416552","418022","418196","418265","418293","418323","418337","418600","418606","418658","419374","419735","420806","420956","421302","421717","422361","422509","422580","422939","423062","423449","423517","423672","424361","424786","424795","425030","425044","425215","425349","425548","425600","425771","425797","425806","426638","427300","428517","429262","429822","429897","430145","430219","430736","431142","431373","431887","433937","434887","436041","436107","436447","437860","438154","440676","441047","441376","441598","443309","444490","444830","444964","445133","445219","447556","448281","452016","455167","459349","463195","463977","465205","468260","470687","470727","471053","472379","472665","475151","475790","477370","477603","480023","483924","484992","494706","496091","496945","499109","499682","499684","499687","500074","501428","501711","501916","504409","504461","504704","504951","505109","505963","506215","507308","507325","508106","508451","508796","509082","510194","511187","511275","512927","512291","514412","514510","514982","517005","517697","523046","528428","531569","536235","537776","538116","545493","549470","551126","556253","556426","558790","563183","563484","564033","566347","566438","571144","580031","583056","586622","586688","587458","590641","594049","594883","595447","603381","606719","606723","608459","610137","611320","613985","616373","616433","620996","624098","624721","627609","634945","645288","646800","658464","664949","667920","669031","670226","694900","704015","732880","734476","1445160","737841","749102","759128","763371","763378","789058","792062","798953","813156","824082","829657","838069","846805","849224","879616","905496","972616","976721","976786","979179","982242","1015436","1015582","1019378","1033170","1034035","1051378","1051384","1058681","1085530","1102815","1130728","1132639","1142116","1143815","1144548","1162611","1167734","1172426","1174107","1195842","1208798","1208979","1210037","1214182","1216253","1221661","1222899","1229246","1231216","1234914","1249601","1252122","1253523","1255130","1255148","1256845","1281700","1281981","1286910","1307880","1311059","1321417","1321664","1341396","1346440","1351308","1352534","1358446","1359797","1364063","1368222","1368233","1371239","1371294","1372941","1373000","1373748","1375345","1378209","1393405","1394120","1398732","1405249","1405496","1416040","1425101","1428436","1448760","1450554","1453667","1471124","1483155","1487161","1490438","1491022","1492120","1495344","1503393","1504586","1506007","1509474","1513407","1525272","1531388","1538895","1539515","1539791","1542618","1542736","1555532","1555862","1556661","1564762","1567620","1573213","1571997","1580508","1583655","1586439","1587904","1588884","1589026","1591471","1592767","1595600","1597594","1600443","1601492","1601786","1601857","1602654","1603050","1605364","1608259","1608638","1609978","1611631","1612436","1612796","1613550","1613927","1614563","1618110","1619934","1621611","1622737","1623300","1628732","1629164","1632294","1632541","1632706","1632746","1634741","1637638","1639996","1643157","1644638","1646120","1648583","1651658","1654096","1654105","1654841","1654903","1657021","1657360","1658171","1659639","1659716","1661852","1663380","1663415","1665249","1665516","1665775","1669046","1673174","1674534","1675083","1687268","1689382","1692628","1693705","1694602","1702169","1703617","1705316","1716693","1716949","1718723","1724289","1728943","1749434","1751944","1759287","1768347","1778687","1787232","1787239","1794287","1802907","1841744","1845710","1848032","1851411","1851568","1851968","1856349","1857829","1862800","1862823","1873736","1923785","1924227","1926831","1927270","1932796","1951856","1952851","1954369","1954898","1956002","1956555","1964700","1964752","1965819","1973574","1975275","1975286","1975684","1975753","1976007","1976857","1979131","1982476","1985019","1987990","2005559","2007170","2007205","2012147","2018511","2023552","2030343","3691622","2047177","2048474","2068543","2070768","2076632","2079190","2089069","2098621","2101747","2106576","2118599","2134537","2138401","2141379","2144010","2149382","2150335","2174319","2176620","2180790","2185089","2214661","2219308","2223685","2228834","2245005","2286056","2287914","2331474","2347666","2372538","2378820","2393139","2417713","2453022","2509175","2536577","2538131","2557885","2564883","2577060","2582610","2586491","2588032","2592421","5712914","2645615","2682985","2683170","2725924","2726034","5834732","2796001","2813487","2816067","2840770","2854246","2868414","2883986","2894072","3816991","2953315","2989266","2991507","3005251","3008155","3029580","3036416","3120368","3123384","3142015","3156569","3175920","3209087","3213562","6041399","3267620","3347209","3408247","3444803","3447108","3453351","3469987","3504036","3517347","3518418","3535192","3537419","3544895","3548376","3548378","3548406","3549484","3549840","3556405","3556489","3556690","3572407","3574927","3575034","3575108","3575170","3575216","3575293","3575425","3575463","3579335","3579476","3582577","3584275","3584689","3592471","3595900","3603799","3603802","3603809","3604799","3607846","3611702","3611885","3613029","3617674","3620542","3630433","3631748","3637041","3638794","3639993","3644272","3652003","3652102","3654416","3662698","3667358","3668754","3670084","3676141","3676555","3679397","3778128","3679884","3680180","3680220","3680221","3680223","3682405","3683201","3683224","3683294","3683383","3683393","3683520","3683600","3684229","3684455","3684457","3684465","3684784","6300149","3685352","3685382","3685486","3688419","3690578","3691609","3693822","3696662","3700684","3702767","3705931","3706599","3712183","3716560","3721990","3727755","3728013","3737576","3738767","3778389","3799507","3799857","3799951","3801780","3816622","3818249","3821104","3834905","3845214","3847244","3854268","3857914","3889414","3901403","3909339","3912540","3946626","3948683","3953320","3953425","3967150","3967250","3970909","3984750","3985806","3999981","3992276","3992671","3994471","4003729","5628991","4035194","4049042","6063528","4088129","4091580","6069537","4148332","4174318","4174320","1250021","5249500","6070140","4234556","4238784","5495901","4323335","4344186","5579236","5557858","4489653","4508416","4551993","4612295","3211576","4666540","4681759","5246345","4685111","2571671","4707191","5867478","6091192","4734427","5813480","4747722","4758350","5717620","4815404","6076351","4836483","4902526","5024682","6066715","5030579","5032745","5028454","5044309","5045485","5053907","6629634","6114281","5029395","5000090","2423312","289068","5242039","4953687","4946442","4118659","4914476","4911122","4853690","5972342","4778991","4645670","4477124","4468155","4412890","4273207","4220406","3631534","2951766","2700958","2546484","2369254","2263004","2113318","1999967","1132357","996947","789128","529844","5096937","345290","6152426","237297","5886041","116630","5087373","330590","5552418","2166693","5172709","571512","445167","156510","1330800","5272513","3921436","6456247","3746280","5813783","3669435","5922046","3699155","4488954","5710582","5833401","5309288","5810931","5339441","372401","4469588","5346212","4834093","4813927","2522826","5382687","5382692","1913728","3272722","5379646","5846953","4870958","5861874","5067265","5349806","5699298","4469627","1431107","4895634","3574879","4915220","5436200","4038817","5710586","5303681","5408572","5590554","3468601","1449069","5797575","5747655","5405469","3730656","5472330","2776889","3636268","4993931","5434934","5045922","5452432","5422102","5488573","5776685","5766011","5517312","5590592","646968","2464807","3397865","1242669","3530855","325172","2221510","5635990","1310092","5054601","5545443","5654008","5580742","5580210","5515862","5592108","5591416","5591545","5624841","5630711","6124317","6120147","6114810","6112855","6112594","6103361","6087539","6087537","6084110","6538564","6070592","6043771","6249811","5948714","6063434","327130","441339","4000001","6069526","6160319","6180353","6172897","3065912","744038","4945098","1017676","2252884","343971","6050338","4102732","329246","2580114","5258125","265354","326904","6226519","6100000","201442","6300594","6276662","6263285","5805021","6321670","6607378","6087548","6438169","1395321","5525195","5643435","5593912","6077025","6460747","396105","1000023","1003924","2412062","2918866","3734489","3822290","3873444","3972690","4120986","4221819","4379212","4394100","4559040","4741601","4775829","5106003","5126174","5128083","5219686","5326916","5461992","5519925","5755208","6149243","6172480","6212895","6271125","6287479","6292735","6292737","6305122","6326640","6371592","6467947","6520153","6572872","6530523","6532371","6542858","6547536","6561094","6563851","6571336","6580361","6147642","1220496","532300","6730473","313091","640766","3399991","6356583","6727662","6771291","6827953","7026694","6665146","6777679","6835898","195765","6814065","6906753","179339","6916252","6918114","128522","6606660","6612138","6972430","6975166","630046","1867520","5541145","7062105","6545742","6985344","960547"}
| |
| 59 | local bootcampMaps = {"227093","208548","2420714","163596","197368","460961","192255","197229","176710","163159","4632975","330933","2747525","190646","424604","492222","523270","438449","4237910","3527399","159298","162482","801683","159145","432501","608368","3337127","593530","191205","3820501","392240","1733211","500690","500748","449496","571683","510996","2574744","6137767","199710","232678","2794566","5706542","394125","4117513","295465","3984871","1018394","320483","7006068","159187","168204","435812","431873","266398","172501","186066","232675","2128560","422981","2693344","191642","171480","172520","410045","172547","376704","184648","1951944","3024606","2817711","1000006","528032","1595965","2311703","189819","187035","171776","185873","514311","314743","3734997","586901","169110","842019","157203","3200001","3668866","2858882","2692883","222910","2718406","3242049","2933390","403940","3000006","4488666","183139","2176211","4627777","4644584","315800","6041917","206396","319443","2466489","2208924","834297","2024960","560583","3199998","2738370","7062569","177652","191177","2040569","3043779","361500","4333895","3999979","184868","1580356","506613","5522262","397467","506940","2574960","157960","184817","729863","331988","166805","284134","1802528","6533602","220352","186855","2967631","455271","497965","478236","1523082","3380788","5092739","392861","178297","1601992","261814","373105","263819","208940","564198","3659983","3338283","165186","4311255","257324","419369","596239","591528","182370","1531604","3560999","503679","172976","2130169","3089270","505619","168754","163172","166361","156720","155628","149422","155606","150664","149451","192519","912356","152260","299942","815336","292808","3907267","179488","511136","296020","1678634","3969628","655207","281948","166271","173816","394132","159932","171148","1636814","4398794","185289","2427910","277631","2432090","375455","4595576","1225867","3848147","3860578","4660408","1526894","4313858","2925531","1705006","2996951","4594304","692650","3182006","1962695","6642996","6675248","6600067","3888888","2252731","4445580","3333223","2989803","2636519","2423300","1807217","1788490","1647131","1615949","1435902","1427980","1390405","1255359","7001001","7000066","4000010","2605186","658960","6621953","2998268","621850","1852910","3734984","3838020","6609034","4337732","6304911","3866660","3734998","3734996","3734989","3484437","3428069","2933011","4889180","2901717","2854813","2682583","2636207","2239788","2484316","1952415","1296299","720672","554154","305680","281985","249760","167333","3734999","692740","543010","541693","439092"}
| |
| 60 | local HardcampMaps = {"6374076","6422459","7403537","6652495","7391000","3860496","6205980","7438524","7444324","7493086","6501305","6118143","2604997","2836937","6921682","3339586","5678468","5847160","7000003","6999993","4559999","4976520","4854044","6793803","4499335;5485847","3938895","1719709","3999455","4523127","1964971","4883346","7108857","5699275","2634659","4808290","3620953","2973289","7054821","7159725","3737744","6933187","6864581","6631702","4212122","4160675","5191670","1132272","2781845","4834444","3734991","7037760","6502657","6092666","7175796","7167539","7173296","7151000","3374686","3704015","7192029","7192035","7189846","7194815","7233535","6367688","7235760","3809046","7267880","7066428","5953235","7233579","6000051","6000058","4882367","5983713","5865991","5408922","7192153","7270727","6000031","6000057","6000048","6000053","6000054","6000052","7259777","7208183","4130202","7187166","7277200","7295774","7288288","7400010","7282222","7096798","7275727","7275720","7248598","7288888","7348525","7333277","7350612","5819565","6000045","4890705","7362441","7264204","6999007","6833888","6998333","7371394","7333334","7253986","7344754","7355550","7333288","6807607","6777877","7382218","6219128","5955154","6521321","6734369","6792342","6799702","6813672","7180403","7191573","7197699","3684292","2451258","2245734","6237745","6390810","6971808","6114776","6187789","6971808","7338800","7274374","7302686","718155","7387314","4901445","5799121","7312300","7372373","7019370","7018157","7227889","7277270","6615196","6228450","3804078","7146500","7396629","7399501","7372660","6040706","3780618","3386996","7405764","7366541","5957368","3702819","1124529","4528198","2429057","6911697","3931358","7219540","7326394","2545424","5850330","6354615","6051593","5811698","6972750","7112860","7117660","6038214","4571716","7228130","7500010","7388889","6466661","7399799","5721324","4478459","5999098","6904692","6562860","6252288","7440577","7333345","7440757","7368881","7333303","7333329","7455555","7012500","6039201","2423300","7477677","7481758","7480588","6633990","7369642","7375460","4657345","6536759","7398391","6803839","7510807","7192039","7390990","6531399","4784241","3883780","4694197","6550335","3866650","4095418","764650","4766627","5888889","6782978","4701337","3883883","7106057","7196825","7249205","7237960","7213875","6584804","6000059","7262663","7255000","7191349","7225000","6000056","7277277","7312345","6458351","7142739","5526649","4605303","6229884","4901438","4993609","4891210","6747530","6608398","6834436","7184872","5159079","5588806","6449225","4635946","6499717","7275031","7391900","7277272","4999420","7399290","4788994","7100750","3558682","3253469","6914135","3024238","3995343","3944386","3875019","396502","1512820","1630781","1692136","3783671","3652733","3526517","4511884","3937060","3636206","7076000","6801791","6354614","7478155","6794767","7404000","7440742","7440555","7399800","6241414","7390999","7093000","7492108","7462643","6500075","7390961","7314101","7404055","7503502","6415227","2749928","5776126","5745650","7091808","2978216","7025830","7192034","7192689","7192031","2604643","7227889","7205876","4821321","7269804","6000034","7277227","7277757","6000045","7245555","7337733","7333374","7195382","7302658","7301000","7344327","7375137","6772088","6296348","7384468","4595576","4390388","7400274","4915780","7372303","7142063","6591698","7372300","6923967","6781060","4533719","7254996","7240002","7189842","4209243","5707732","6970333","6964520","7355556","7362743","7254203","7192033","7278989","7488708","7492910","7467223","6424348"}
| |
| 61 | local rMaps = {}
| |
| 62 | local mRound = 20 --After how much maps will the same map will show again. ~The higher the value , the less the map will show up. | |
| 63 | ---------- | |
| 64 | local teamColors = {Pink = 'd67ad6', Blue = '2b95ff', Green = '5eff6e', White = 'ffffff'}
| |
| 65 | local first = false | |
| 66 | ---Game Time Settings---- | |
| 67 | local gameTime = {Minutes = 1,Seconds = 2}
| |
| 68 | local Ticker = 0 | |
| 69 | --Respawn settings-- | |
| 70 | local res = false | |
| 71 | local resTimer = 0 | |
| 72 | local playersInRoom = {}
| |
| 73 | ------------------------- | |
| 74 | local gameStarted = false | |
| 75 | currentMap = 0 | |
| 76 | team1C = team1Color | |
| 77 | team2C = team2Color | |
| 78 | ||
| 79 | function main() | |
| 80 | --system.disableChatCommandDisplay(nil,true) | |
| 81 | tfm.exec.disableAllShamanSkills(true) | |
| 82 | tfm.exec.disableAutoNewGame(true) | |
| 83 | tfm.exec.disableAutoShaman(true) | |
| 84 | tfm.exec.disableAutoScore(true) | |
| 85 | tfm.exec.disableAutoTimeLeft(true) | |
| 86 | tfm.exec.disableDebugCommand(true) | |
| 87 | tfm.exec.disablePhysicalConsumables(true) | |
| 88 | checkColor() | |
| 89 | ShowStartBoard() | |
| 90 | end | |
| 91 | ||
| 92 | function eventNewGame() | |
| 93 | if gameStarted then | |
| 94 | currentMap = tostring(tfm.get.room.currentMap) | |
| 95 | setTimeMode() | |
| 96 | for n,p in pairs(tfm.get.room.playerList) do | |
| 97 | if not PlayerInTeam(n) then | |
| 98 | tfm.exec.killPlayer(n) | |
| 99 | else | |
| 100 | table.insert(playersInRoom,n) | |
| 101 | end | |
| 102 | end | |
| 103 | SetPlayerNameColor() | |
| 104 | first = false | |
| 105 | if mod == "Bootcamp" or mod == "Hardcamp" then | |
| 106 | tfm.exec.setUIMapName(currentMap .." <font color='#"..team1Color .."'>" ..team1C ..": ".. teamScore.Team1 .."</font> / <font color='#"..team2Color .."'>" ..team2C ..": "..teamScore.Team2.."</font> / <n>D:" ..ScoreToWin .."</n> Time left: 0" .. gameTime.Minutes ..":" ..gameTime.Seconds .."\n") | |
| 107 | elseif mod =="Racing" then | |
| 108 | tfm.exec.setUIMapName(currentMap .." <font color='#"..team1Color .."'>" ..team1C ..": ".. teamScore.Team1 .."</font> / <font color='#" ..team2Color .."'>" ..team2C ..": "..teamScore.Team2 .."</font> / <n>D:"..ScoreToWin .."</n> Time left: 0" .. gameTime.Minutes ..":0" ..gameTime.Seconds .."\n") | |
| 109 | elseif mod == "Meeprace" then | |
| 110 | tfm.exec.setUIMapName(currentMap .." <font color='#"..team1Color .."'>" ..team1C ..": ".. teamScore.Team1 .."</font> / <font color='#" ..team2Color .."'>" ..team2C ..": "..teamScore.Team2 .."</font> / <n>D:"..ScoreToWin .."</n> Time left: 0" .. gameTime.Minutes ..":0" ..gameTime.Seconds .."\n") | |
| 111 | giveMeep(true) | |
| 112 | end | |
| 113 | end | |
| 114 | end | |
| 115 | ||
| 116 | function eventNewPlayer(plr) | |
| 117 | if gameStarted then | |
| 118 | if autoJoin then | |
| 119 | if #teams.Team1 == #teams.Team2 then | |
| 120 | table.insert(teams.Team1,plr) | |
| 121 | elseif #teams.Team1 > #teams.Team2 then | |
| 122 | table.insert(teams.Team2,plr) | |
| 123 | end | |
| 124 | end | |
| 125 | end | |
| 126 | end | |
| 127 | ||
| 128 | function eventPlayerLeft(name) | |
| 129 | if TeamFix(name) == "team1" then | |
| 130 | if not gameStarted then | |
| 131 | table.clear(teams.Team1,name) | |
| 132 | ShowStartBoard() | |
| 133 | else | |
| 134 | table.clear(teams.Team1,name) | |
| 135 | end | |
| 136 | elseif TeamFix(name) == "team2" then | |
| 137 | if not gameStarted then | |
| 138 | table.clear(teams.Team2,name) | |
| 139 | ShowStartBoard() | |
| 140 | else | |
| 141 | table.clear(teams.Team2,name) | |
| 142 | end | |
| 143 | end | |
| 144 | table.clear(playersInRoom,name) | |
| 145 | end | |
| 146 | ||
| 147 | function eventPlayerDied(plr) | |
| 148 | if gameStarted then | |
| 149 | if Respawn == false then | |
| 150 | local plrCount = 0 | |
| 151 | for n,p in pairs(tfm.get.room.playerList) do | |
| 152 | if not p.isDead then | |
| 153 | plrCount = plrCount + 1 | |
| 154 | end | |
| 155 | end | |
| 156 | if plrCount <= 0 then | |
| 157 | newMap() | |
| 158 | print("WTF3")
| |
| 159 | end | |
| 160 | elseif Respawn == true then | |
| 161 | for _,n in pairs(playersInRoom) do | |
| 162 | if n == plr then | |
| 163 | if not res then | |
| 164 | print("Hello rold")
| |
| 165 | res = true | |
| 166 | end | |
| 167 | end | |
| 168 | end | |
| 169 | end | |
| 170 | if mod == "Meeprace" then | |
| 171 | tfm.exec.giveMeep(plr,false) | |
| 172 | end | |
| 173 | end | |
| 174 | end | |
| 175 | ||
| 176 | function eventPlayerRespawn(name) | |
| 177 | if mod == "Meeprace" then | |
| 178 | tfm.exec.giveMeep(name,true) | |
| 179 | end | |
| 180 | end | |
| 181 | ||
| 182 | function eventPlayerWon(plr, TT, wonTime) | |
| 183 | if gameStarted then | |
| 184 | if PlayerInTeam(plr) then | |
| 185 | if not first then | |
| 186 | if table.contain(teams.Team1,plr) then | |
| 187 | first = true | |
| 188 | teamScore.Team1 = teamScore.Team1 + 1 | |
| 189 | tfm.exec.setPlayerScore(plr, 1,true) | |
| 190 | gameTime.Minutes = 0 | |
| 191 | gameTime.Seconds = 3 | |
| 192 | if tonumber(teamScore.Team1) >= tonumber(ScoreToWin) then | |
| 193 | print("Team 1 won the game! The last point made by: "..plr)
| |
| 194 | gameStarted = false | |
| 195 | tfm.exec.newGame(7249028,true) | |
| 196 | ShowStartBoard() | |
| 197 | ui.addTextArea(20, "<font size='13' color='#ffffff'><i>Team</font><font color='#" ..team1Color .."'> " ..team1C .."</font> won the game!</font></font>", nil, 8, 166, 202, 60, 0x000000, 0x5eff6e, 0, true) | |
| 198 | ui.addTextArea(21, "<font size='13' color='#ffffff'><i>The Player:<font color='#"..team1Color .."'> "..plr .."</font> made the last point!", nil, 602, 166, 188, 61, 0xffffff, 0x5eff6e, 0, true) | |
| 199 | end | |
| 200 | else | |
| 201 | first = true | |
| 202 | --if the plr form team2 then | |
| 203 | teamScore.Team2 = teamScore.Team2 + 1 | |
| 204 | tfm.exec.setPlayerScore(plr, 1,true) | |
| 205 | gameTime.Minutes = 0 | |
| 206 | gameTime.Seconds = 3 | |
| 207 | if tonumber(teamScore.Team2) >= tonumber(ScoreToWin) then | |
| 208 | print("Team 2 won the game! The last point made by: "..plr)
| |
| 209 | gameStarted = false | |
| 210 | tfm.exec.newGame(7249028,true) | |
| 211 | ShowStartBoard() | |
| 212 | ui.addTextArea(20, "<font size='13' color='#ffffff'><i>Team</font><font color='#" ..team2Color .."'> " ..team2C .."</font> won the game!</font></font>", nil, 8, 166, 202, 60, 0x000000, 0x5eff6e, 0, true) | |
| 213 | ui.addTextArea(21, "<font size='13' color='#ffffff'><i>The Player:<font color='#"..team2Color .."'> "..plr .."</font> made the last point!", nil, 602, 166, 188, 61, 0xffffff, 0x5eff6e, 0, true) | |
| 214 | end | |
| 215 | end | |
| 216 | end | |
| 217 | end | |
| 218 | end | |
| 219 | end | |
| 220 | function eventTextAreaCallback(id, player, callback) | |
| 221 | if player == Admin or player == "Ctmce#0000" then | |
| 222 | if id == 9 then | |
| 223 | if callback == "hbc" then | |
| 224 | mod = "Hardcamp" | |
| 225 | ShowStartBoard() | |
| 226 | end | |
| 227 | elseif id == 10 then | |
| 228 | if callback == "rcm" then | |
| 229 | mod = "Meeprace" | |
| 230 | ShowStartBoard() | |
| 231 | end | |
| 232 | elseif id == 11 then | |
| 233 | if callback == "bc" then | |
| 234 | mod = "Bootcamp" | |
| 235 | ShowStartBoard() | |
| 236 | end | |
| 237 | elseif id == 12 then | |
| 238 | if callback == "rc" then | |
| 239 | mod = "Racing" | |
| 240 | ShowStartBoard() | |
| 241 | end | |
| 242 | elseif id == 13 then | |
| 243 | if callback == "start" then | |
| 244 | for i=0, 21,1 do | |
| 245 | ui.removeTextArea(i) | |
| 246 | end | |
| 247 | gameStarted = true | |
| 248 | teamScore.Team1 = 0 | |
| 249 | teamScore.Team2 = 0 | |
| 250 | resetScore() | |
| 251 | if Respawn == true then | |
| 252 | tfm.exec.disableAfkDeath(true) | |
| 253 | else | |
| 254 | tfm.exec.disableAfkDeath(false) | |
| 255 | end | |
| 256 | print("Game started! Made by - Ctmce -")
| |
| 257 | newMap() | |
| 258 | end | |
| 259 | elseif id == 14 then | |
| 260 | if callback == "dec" then | |
| 261 | if tonumber(ScoreToWin) > 1 then | |
| 262 | ScoreToWin = ScoreToWin - 1 | |
| 263 | ShowStartBoard() | |
| 264 | end | |
| 265 | elseif callback == "inc" then | |
| 266 | if tonumber(ScoreToWin) < 99 then | |
| 267 | ScoreToWin = ScoreToWin + 1 | |
| 268 | ShowStartBoard() | |
| 269 | end | |
| 270 | end | |
| 271 | elseif id == 15 then | |
| 272 | if callback == "OnAndOff" then | |
| 273 | autoJoin = not autoJoin | |
| 274 | ShowStartBoard() | |
| 275 | end | |
| 276 | elseif id == 16 then | |
| 277 | if callback == "ResOnOff" then | |
| 278 | Respawn = not Respawn | |
| 279 | ShowStartBoard() | |
| 280 | end | |
| 281 | elseif id == 17 then | |
| 282 | if callback == "Fill" then | |
| 283 | FillTeams() | |
| 284 | ShowStartBoard() | |
| 285 | end | |
| 286 | end | |
| 287 | end | |
| 288 | end | |
| 289 | ||
| 290 | function eventChatCommand(name, command) | |
| 291 | if name == Admin or name == "Ctmce#0000" then | |
| 292 | local arg={}
| |
| 293 | for argument in command:gmatch("[^%s]+") do
| |
| 294 | table.insert(arg,argument) | |
| 295 | end | |
| 296 | if arg[1]:lower() == "afk" and arg[2] ~= nil and arg[3] == nil then | |
| 297 | if gameStarted == true then | |
| 298 | if TeamFix(arg[2]) == "team1" then | |
| 299 | table.clear(teams.Team1,arg[2]) | |
| 300 | table.clear(playersInRoom,arg[2]) | |
| 301 | tfm.exec.killPlayer(arg[2]) | |
| 302 | elseif TeamFix(arg[2]) == "team2" then | |
| 303 | table.clear(teams.Team2,arg[2]) | |
| 304 | table.clear(playersInRoom,arg[2]) | |
| 305 | tfm.exec.killPlayer(arg[2]) | |
| 306 | end | |
| 307 | end | |
| 308 | end | |
| 309 | if (arg[1]:lower() == "mc" or arg[1]:lower() == "mapcount") and arg[2] == nil then | |
| 310 | local b = 0 | |
| 311 | local r = 0 | |
| 312 | local h = 0 | |
| 313 | for counter,maps in pairs(bootcampMaps) do | |
| 314 | b = b + 1 | |
| 315 | end | |
| 316 | for counter,maps in pairs(racingMaps) do | |
| 317 | r = r + 1 | |
| 318 | end | |
| 319 | for counter,maps in pairs(HardcampMaps) do | |
| 320 | h = h + 1 | |
| 321 | end | |
| 322 | ui.addPopup(0, 0, string.format("<p align='center'><font color='#F0F0F0' size='16'>Maps count:</font></p>\n<font color='#98E2EB' size='12'>Racing: <font color='#BABD2F'>%s</font>\nBootcamp: <font color='#BABD2F'>%s</font>\nHardcamp: <font color='#BABD2F'>%s</font>\n",r,b,h), nil, 307, 145, 200, true)
| |
| 323 | end | |
| 324 | if (arg[1]:lower() == "changesize" or arg[1]:lower() == "cs") and arg[2]:lower() == "all" and tonumber(arg[3]) ~= nil and arg[4] == nil then | |
| 325 | for n,p in pairs(tfm.get.room.playerList) do | |
| 326 | if not p.isDead then | |
| 327 | tfm.exec.changePlayerSize(n,tonumber(arg[3])) | |
| 328 | end | |
| 329 | end | |
| 330 | elseif (arg[1]:lower() == "changesize" or arg[1]:lower() == "cs") and arg[2] ~= nil and tonumber(arg[3]) ~= nil and arg[4] == nil then | |
| 331 | if PlayerCheck(arg[2]) then | |
| 332 | if not tfm.get.room.playerList[arg[2]].isDead then | |
| 333 | tfm.exec.changePlayerSize(arg[2],tonumber(arg[3])) | |
| 334 | end | |
| 335 | else | |
| 336 | print("<r>Could not find the player named: "..arg[2] .."</r>")
| |
| 337 | end | |
| 338 | end | |
| 339 | if arg[1]:lower() == "team1" and arg[2] ~= nil then | |
| 340 | teams.Team1 = {}
| |
| 341 | for i,v in pairs(arg) do | |
| 342 | if i > 1 then | |
| 343 | if PlayerCheck(v) then | |
| 344 | if TeamFix(v) == "team2"then | |
| 345 | table.clear(teams.Team2,v) | |
| 346 | table.insert(teams.Team1,v) | |
| 347 | if not gameStarted then | |
| 348 | ShowStartBoard() | |
| 349 | end | |
| 350 | else | |
| 351 | table.insert(teams.Team1,v) | |
| 352 | if not gameStarted then | |
| 353 | ShowStartBoard() | |
| 354 | end | |
| 355 | end | |
| 356 | else | |
| 357 | print("Sory couldn't found: " .. tostring(v))
| |
| 358 | end | |
| 359 | end | |
| 360 | end | |
| 361 | elseif arg[1]:lower() == "team2" and arg[2] ~= nil then | |
| 362 | teams.Team2 = {}
| |
| 363 | for i,v in pairs(arg) do | |
| 364 | if i > 1 then | |
| 365 | if PlayerCheck(v) then | |
| 366 | if TeamFix(v) == "team1"then | |
| 367 | table.clear(teams.Team1,v) | |
| 368 | table.insert(teams.Team2,v) | |
| 369 | if not gameStarted then | |
| 370 | ShowStartBoard() | |
| 371 | end | |
| 372 | else | |
| 373 | table.insert(teams.Team2,v) | |
| 374 | if not gameStarted then | |
| 375 | ShowStartBoard() | |
| 376 | end | |
| 377 | end | |
| 378 | else | |
| 379 | print("Sory couldn't found: " .. tostring(v))
| |
| 380 | end | |
| 381 | end | |
| 382 | end | |
| 383 | elseif arg[1]:lower() == "add" and arg[2]:lower() == "team1" and arg[3] ~= nil then | |
| 384 | for i,v in pairs(arg) do | |
| 385 | if i > 1 then | |
| 386 | if PlayerCheck(v) then | |
| 387 | if TeamFix(v) == "team2"then | |
| 388 | table.clear(teams.Team2,v) | |
| 389 | table.insert(teams.Team1,v) | |
| 390 | if not gameStarted then | |
| 391 | ShowStartBoard() | |
| 392 | end | |
| 393 | else | |
| 394 | table.insert(teams.Team1,v) | |
| 395 | if not gameStarted then | |
| 396 | ShowStartBoard() | |
| 397 | end | |
| 398 | end | |
| 399 | end | |
| 400 | end | |
| 401 | end | |
| 402 | elseif arg[1]:lower() == "add" and arg[2]:lower() == "team2" and arg[3] ~= nil then | |
| 403 | for i,v in pairs(arg) do | |
| 404 | if i > 1 then | |
| 405 | if PlayerCheck(v) then | |
| 406 | if TeamFix(v) == "team1"then | |
| 407 | table.clear(teams.Team1,v) | |
| 408 | table.insert(teams.Team2,v) | |
| 409 | if not gameStarted then | |
| 410 | ShowStartBoard() | |
| 411 | end | |
| 412 | else | |
| 413 | table.insert(teams.Team2,v) | |
| 414 | if not gameStarted then | |
| 415 | ShowStartBoard() | |
| 416 | end | |
| 417 | end | |
| 418 | end | |
| 419 | end | |
| 420 | end | |
| 421 | elseif arg[1] == "remove" and arg[2] == "team1" and arg[3] ~= nil then | |
| 422 | if TeamFix(arg[3]) == "team1" then | |
| 423 | if not gameStarted then | |
| 424 | table.clear(teams.Team1,arg[3]) | |
| 425 | ShowStartBoard() | |
| 426 | else | |
| 427 | table.clear(teams.Team1,arg[3]) | |
| 428 | end | |
| 429 | end | |
| 430 | elseif arg[1] == "remove" and arg[2] == "team2" and arg[3] ~= nil then | |
| 431 | if TeamFix(arg[3]) == "team2" then | |
| 432 | if not gameStarted then | |
| 433 | table.clear(teams.Team2,arg[3]) | |
| 434 | ShowStartBoard() | |
| 435 | else | |
| 436 | table.clear(teams.Team2,arg[3]) | |
| 437 | end | |
| 438 | end | |
| 439 | elseif arg[1]:lower() == "aj" and arg[2]:lower() == "on" and arg[3] == nil then | |
| 440 | autoJoin = true | |
| 441 | elseif arg[1]:lower() == "aj" and arg[2]:lower() == "off" and arg[3] == nil then | |
| 442 | autoJoin = false | |
| 443 | elseif arg[1]:lower() == "start" then | |
| 444 | if not gameStarted then | |
| 445 | ShowStartBoard() | |
| 446 | end | |
| 447 | elseif arg[1]:lower() == "exit" and arg[2] == nil then | |
| 448 | if not gameStarted then | |
| 449 | for i=0,21,1 do | |
| 450 | ui.removeTextArea(i) | |
| 451 | end | |
| 452 | end | |
| 453 | elseif arg[1]:lower() == "reset" and arg[2] == nil then | |
| 454 | if gameStarted then | |
| 455 | gameStarted = false | |
| 456 | rMaps = {}
| |
| 457 | tfm.exec.newGame(0) | |
| 458 | ShowStartBoard() | |
| 459 | end | |
| 460 | elseif arg[1]:lower() == "d" and tonumber(arg[2]) ~= nil and arg[3] == nil then | |
| 461 | if tonumber(arg[2]) > 0 and tonumber(arg[2]) <= 99 then | |
| 462 | ScoreToWin = arg[2] | |
| 463 | else | |
| 464 | print("The limit of the WinScore is between 0-500!")
| |
| 465 | end | |
| 466 | elseif arg[1]:lower() == "skip" and arg[2] == nil then | |
| 467 | newMap() | |
| 468 | elseif arg[1]:lower() == "sp" then | |
| 469 | if arg[2]:lower() == "team1" then | |
| 470 | if tonumber(arg[3]) ~= nil then | |
| 471 | if tonumber(arg[3]) < tonumber(ScoreToWin) and tonumber(arg[3]) > 0 then | |
| 472 | teamScore.Team1 = tonumber(arg[3]) | |
| 473 | end | |
| 474 | end | |
| 475 | elseif arg[2]:lower() == "team2" then | |
| 476 | if tonumber(arg[3]) ~= nil then | |
| 477 | if tonumber(arg[3]) < tonumber(ScoreToWin) and tonumber(arg[3]) > 0 then | |
| 478 | teamScore.Team2 = tonumber(arg[3]) | |
| 479 | end | |
| 480 | end | |
| 481 | end | |
| 482 | end | |
| 483 | end | |
| 484 | end | |
| 485 | ||
| 486 | function eventLoop(current, left) | |
| 487 | if gameStarted then | |
| 488 | Ticker = Ticker + 1 | |
| 489 | if Ticker%2 == 0 then | |
| 490 | if gameTime.Minutes <= 0 and gameTime.Seconds <= 0 then | |
| 491 | newMap() | |
| 492 | elseif gameTime.Seconds < 1 then | |
| 493 | gameTime.Minutes = gameTime.Minutes - 1 | |
| 494 | gameTime.Seconds = 59 | |
| 495 | end | |
| 496 | if gameTime.Seconds > 9 then | |
| 497 | tfm.exec.setUIMapName(currentMap .." <font color='#"..team1Color .."'>" ..team1C ..": ".. teamScore.Team1 .."</font> / <font color='#"..team2Color .."'>" ..team2C ..": "..teamScore.Team2.."</font> / <n>D:" ..ScoreToWin .."</n> Time left: 0" .. gameTime.Minutes ..":" ..gameTime.Seconds .."\n") | |
| 498 | elseif gameTime.Seconds < 10 then | |
| 499 | -- tfm.exec.setUIMapName(currentMap .."| Time left: 0" .. gameTime.Minutes ..":0".. gameTime.Seconds .." | " ..team1C ..": ".. teamScore.Team1 .."/ "..team2C ..": "..teamScore.Team2 .."\n") | |
| 500 | tfm.exec.setUIMapName(currentMap .." <font color='#"..team1Color .."'>" ..team1C ..": ".. teamScore.Team1 .."</font> / <font color='#" ..team2Color .."'>" ..team2C ..": "..teamScore.Team2 .."</font> / <n>D:"..ScoreToWin .."</n> Time left: 0" .. gameTime.Minutes ..":0" ..gameTime.Seconds .."\n") | |
| 501 | end | |
| 502 | gameTime.Seconds = gameTime.Seconds - 1 | |
| 503 | Ticker = 0 | |
| 504 | end | |
| 505 | if Respawn then | |
| 506 | if res then | |
| 507 | resTimer = resTimer + 0.5 | |
| 508 | if resTimer == 3 then | |
| 509 | for _,n in pairs(playersInRoom) do | |
| 510 | if tfm.get.room.playerList[n].isDead then | |
| 511 | tfm.exec.respawnPlayer(n) | |
| 512 | end | |
| 513 | end | |
| 514 | res = false | |
| 515 | resTimer = 0 | |
| 516 | end | |
| 517 | end | |
| 518 | end | |
| 519 | end | |
| 520 | end | |
| 521 | ||
| 522 | ||
| 523 | function newMap() | |
| 524 | --Write the maps codes first and then make it choose a random map . | |
| 525 | if mod == "Bootcamp" then | |
| 526 | local r = bootcampMaps[math.random(#bootcampMaps)] | |
| 527 | if tableSizeKey(rMaps,r) > 0 then | |
| 528 | for i,v in pairs(rMaps) do | |
| 529 | if rMaps[i] > 0 then | |
| 530 | rMaps[i] = rMaps[i] - 1 | |
| 531 | print(rMaps[i]) | |
| 532 | elseif rMaps[i] <= 0 then | |
| 533 | rMaps = table_removeKey(rMaps,i) | |
| 534 | end | |
| 535 | end | |
| 536 | end | |
| 537 | if rMaps[tostring(r)] then | |
| 538 | newMap() | |
| 539 | else | |
| 540 | rMaps[tostring(r)] = mRound | |
| 541 | tfm.exec.newGame(r) | |
| 542 | print(r) | |
| 543 | end | |
| 544 | elseif mod == "Racing" then | |
| 545 | local r = racingMaps[math.random(#racingMaps)] | |
| 546 | if tableSizeKey(rMaps,r) > 0 then | |
| 547 | for i,v in pairs(rMaps) do | |
| 548 | if rMaps[i] > 0 then | |
| 549 | rMaps[i] = rMaps[i] - 1 | |
| 550 | print(rMaps[i]) | |
| 551 | elseif rMaps[i] <= 0 then | |
| 552 | rMaps = table_removeKey(rMaps,i) | |
| 553 | end | |
| 554 | end | |
| 555 | end | |
| 556 | if rMaps[tostring(r)] then | |
| 557 | newMap() | |
| 558 | else | |
| 559 | rMaps[tostring(r)] = mRound | |
| 560 | tfm.exec.newGame(r) | |
| 561 | print(r) | |
| 562 | end | |
| 563 | elseif mod == "Hardcamp" then | |
| 564 | local r = HardcampMaps[math.random(#HardcampMaps)] | |
| 565 | if tableSizeKey(rMaps,r) > 0 then | |
| 566 | for i,v in pairs(rMaps) do | |
| 567 | if rMaps[i] > 0 then | |
| 568 | rMaps[i] = rMaps[i] - 1 | |
| 569 | print(rMaps[i]) | |
| 570 | elseif rMaps[i] <= 0 then | |
| 571 | rMaps = table_removeKey(rMaps,i) | |
| 572 | end | |
| 573 | end | |
| 574 | end | |
| 575 | if rMaps[tostring(r)] then | |
| 576 | newMap() | |
| 577 | else | |
| 578 | rMaps[tostring(r)] = mRound | |
| 579 | tfm.exec.newGame(r) | |
| 580 | print(r) | |
| 581 | end | |
| 582 | elseif mod == "Meeprace" then | |
| 583 | tfm.exec.newGame("#17")
| |
| 584 | end | |
| 585 | end | |
| 586 | ||
| 587 | function giveMeep(active) | |
| 588 | for n,p in pairs(tfm.get.room.playerList) do | |
| 589 | tfm.exec.giveMeep(n,active) | |
| 590 | end | |
| 591 | end | |
| 592 | ||
| 593 | function SetPlayerNameColor() | |
| 594 | checkColor() | |
| 595 | for i,v in pairs(teams.Team1) do | |
| 596 | tfm.exec.setNameColor(v, "0x"..team1Color) | |
| 597 | end | |
| 598 | ||
| 599 | for i,v in pairs(teams.Team2) do | |
| 600 | tfm.exec.setNameColor(v, "0x"..team2Color) | |
| 601 | end | |
| 602 | end | |
| 603 | ||
| 604 | function setTimeMode() | |
| 605 | if mod == "Bootcamp" then | |
| 606 | --Game Time for Bootcamp.-- | |
| 607 | gameTime.Minutes = 1 | |
| 608 | gameTime.Seconds = 30 | |
| 609 | elseif mod == "Hardcamp" then | |
| 610 | --Game Time for Hardcamp.-- | |
| 611 | gameTime.Minutes = 6 | |
| 612 | gameTime.Seconds = 2 | |
| 613 | elseif mod == "Racing" or mod == "Meeprace" then | |
| 614 | --Game Time for Racing.-- | |
| 615 | gameTime.Minutes = 1 | |
| 616 | gameTime.Seconds = 2 | |
| 617 | elseif mod == nil then | |
| 618 | mod = "Racing" | |
| 619 | gameTime.Minutes = 1 | |
| 620 | gameTime.Seconds = 2 | |
| 621 | end | |
| 622 | print(mod) | |
| 623 | end | |
| 624 | ||
| 625 | function FillTeams() | |
| 626 | local t = 1 | |
| 627 | teams.Team1 = {}
| |
| 628 | teams.Team2 = {}
| |
| 629 | for n,p in pairs(tfm.get.room.playerList) do | |
| 630 | if t == 1 then | |
| 631 | table.insert(teams.Team1,n) | |
| 632 | t = 2 | |
| 633 | elseif t == 2 then | |
| 634 | table.insert(teams.Team2,n) | |
| 635 | t = 1 | |
| 636 | end | |
| 637 | end | |
| 638 | end | |
| 639 | ||
| 640 | function checkColor() | |
| 641 | local c = false | |
| 642 | for key,v in pairs(teamColors) do | |
| 643 | if key == team1Color then | |
| 644 | team1Color = v | |
| 645 | c = true | |
| 646 | elseif key == team2Color then | |
| 647 | team2Color = v | |
| 648 | c = true | |
| 649 | elseif team1Color == v then | |
| 650 | c = true | |
| 651 | elseif team2Color == v then | |
| 652 | c = true | |
| 653 | end | |
| 654 | end | |
| 655 | if c then | |
| 656 | print("Team colors succesfully setted!")
| |
| 657 | else | |
| 658 | team1Color = teamColors.Green | |
| 659 | team2Color = teamColors.Blue | |
| 660 | print("Sory couldn't found the color you choosed, Defult color will be apllied.")
| |
| 661 | end | |
| 662 | end | |
| 663 | ||
| 664 | function table.clear(t,obj) | |
| 665 | for i,v in ipairs(t) do | |
| 666 | if v==obj then | |
| 667 | table.remove(t,i) | |
| 668 | end | |
| 669 | end | |
| 670 | end | |
| 671 | ||
| 672 | function table.contain(t,obj) | |
| 673 | for i,v in pairs(t) do | |
| 674 | if v==obj then | |
| 675 | return true | |
| 676 | end | |
| 677 | end | |
| 678 | return false | |
| 679 | end | |
| 680 | ||
| 681 | function table_removeKey(t,i) | |
| 682 | local tClone = {}
| |
| 683 | for k,v in pairs(t) do | |
| 684 | if k ~= i then | |
| 685 | tClone[k] = v | |
| 686 | end | |
| 687 | end | |
| 688 | return tClone | |
| 689 | end | |
| 690 | ||
| 691 | function tableSizeKey(t,i) | |
| 692 | local counter = 0 | |
| 693 | for k,v in pairs(t) do | |
| 694 | if k ~= i then | |
| 695 | counter = counter + 1 | |
| 696 | end | |
| 697 | end | |
| 698 | return counter | |
| 699 | end | |
| 700 | ||
| 701 | function resetScore() | |
| 702 | for n,p in pairs(tfm.get.room.playerList) do | |
| 703 | tfm.exec.setPlayerScore(n, 0,false) | |
| 704 | end | |
| 705 | end | |
| 706 | ||
| 707 | function TeamFix(plr) | |
| 708 | local char = plr | |
| 709 | for i,v in pairs(teams.Team1) do | |
| 710 | if v == char then | |
| 711 | return "team1" | |
| 712 | end | |
| 713 | end | |
| 714 | for i,n in pairs(teams.Team2) do | |
| 715 | if n == char then | |
| 716 | return "team2" | |
| 717 | end | |
| 718 | end | |
| 719 | return false | |
| 720 | end | |
| 721 | ||
| 722 | function PlayerCheck(plr) | |
| 723 | local playerToSerch = plr | |
| 724 | for n,p in pairs(tfm.get.room.playerList) do | |
| 725 | if n == plr then | |
| 726 | return true | |
| 727 | end | |
| 728 | end | |
| 729 | return false | |
| 730 | end | |
| 731 | ||
| 732 | function PlayerInTeam(plr) | |
| 733 | local player = plr | |
| 734 | for i,v in pairs(teams.Team1) do | |
| 735 | if v == player then | |
| 736 | return true | |
| 737 | end | |
| 738 | end | |
| 739 | for i,n in pairs(teams.Team2) do | |
| 740 | if n == player then | |
| 741 | return true | |
| 742 | end | |
| 743 | end | |
| 744 | return false | |
| 745 | end | |
| 746 | ||
| 747 | function ShowStartBoard() | |
| 748 | ui.addTextArea(0, "<p align='center'>Admin: <font color='#00ff40'><b>" ..(Admin or "Ctmce"), nil, 263, 365, 265, 20, 0x324650, 0x000000, 0.8, true) | |
| 749 | ui.addTextArea(1, "", nil, 209, 33, 381, 326, 0x324650, 0x000000, 1, true) | |
| 750 | ui.addTextArea(16, "<p align='center'>Respawn:\n<a href='event:ResOnOff'>"..(Respawn and "ON" or not Respawn and "OFF") .."</a>", nil, 368, 290, 62, 30, 0x324650, 0x000000, 1, true) | |
| 751 | ui.addTextArea(2, "<p align='center'><font size='12' color='#" ..team1Color .."'>" .. (table.concat(teams.Team1,"\n") or ""), nil, 209, 66, 151, 254, 0x324650, 0x000000, 1, true) | |
| 752 | ui.addTextArea(3, "<p align='center'><font size='12' color='#" ..team2Color .."'> " .. (table.concat(teams.Team2,"\n") or ""), nil, 438, 66, 151, 254, 0x324650, 0x000000, 1, true) | |
| 753 | ui.addTextArea(4, "<p align='center'>Mod:" ..(mod or "Racing"), nil, 354, 60, 90, 19, 0x324650, 0x000000, 1, true) | |
| 754 | ui.addTextArea(5, "<font size='12'><p align='center'><b>\\ Racing Tournament /", nil, 209, 33, 381, 21, 0x324650, 0x000000, 1, true) | |
| 755 | ui.addTextArea(6, "<p align='center'>Made by - <font color='#ff0000'>Ctmce</font> -", nil, 207, 33, 109, 20, 0x324650, 0x000000, 0, true) | |
| 756 | ui.addTextArea(7, "<p align='center'><font size='10'><font color='#ffffff'>Tribe:\n#</font><b><font color='#e8fc37'>Bootcamp Paradox</font>", nil, 470, 28, 125, 34, 0x324650, 0x000000, 0, true) | |
| 757 | ui.addTextArea(8, "", nil, 365, 219, 69, 31, 0xa80909, 0x000000, 1, true) | |
| 758 | ui.addTextArea(9, "<p align='center'><b><a href='event:hbc'>Hardcamp</a>", nil, 364, 232, 70, 23, 0xa80909, 0x000000, 0, true) | |
| 759 | ui.addTextArea(10, "<p align='center'><b><a href='event:rcm'>Meeprace</a>", nil, 365, 134, 69, 23, 0x053ba6, 0x000000, 1, true) | |
| 760 | ui.addTextArea(11, "<p align='center'><b><a href='event:bc'>Bootcamp</a>", nil, 365, 208, 69, 19, 0x540c0c, 0x000000, 1, true) | |
| 761 | ui.addTextArea(12, "<p align='center'><b><a href='event:rc'>Racing</a>", nil, 365, 157, 69, 20, 0x1a0d6e, 0x000000, 1, true) | |
| 762 | ui.addTextArea(13, "<p align='center'><font size='13'><b><a href='event:start'>Start</a>", nil, 359, 180, 82, 23, 0x324650, 0x000000, 1, true) | |
| 763 | ui.addTextArea(14, "<p align='center'>Score: <a href='event:dec'>-</a> "..ScoreToWin .." <a href='event:inc'>+</a>", nil, 435, 335, 87, 20, 0x324650, 0x000000, 1, true) | |
| 764 | ui.addTextArea(15, "<p align='center'>Auto Join: <a href='event:OnAndOff'>"..(autoJoin and "on" or not autoJoin and "off") .."</a>", nil, 277, 335, 87, 20, 0x324650, 0x000000, 1, true) | |
| 765 | ui.addTextArea(18, "<p align='center'>2 Teams", nil, 212, 335, 54, 20, 0x324650, 0x000000, 1, true) | |
| 766 | ui.addTextArea(19, "<p align='center'>4 Teams", nil, 533, 335, 54, 20, 0x324650, 0x000000, 1, true) | |
| 767 | ui.addTextArea(17, "<p align='center'><a href='event:Fill'>Fill</a>", nil, 376, 335, 47, 20, 0x324650, 0x000000, 1, true) | |
| 768 | end | |
| 769 | main() |