LUA   49

Untitled

Guest on 30th July 2022 07:44:28 PM

  1. local function getPlayerFromName(name)
  2.         for _, player in pairs(game:GetService("Players"):GetPlayers()) do
  3.                 if player.Name:lower() == name:lower() then
  4.                         return player
  5.                 end
  6.         end
  7. end
  8.  
  9. local player = getPlayerFromName(script.Parent.Parent.Name)
  10. repeat wait() until player.Character
  11. local localCharacter = player.Character
  12.  
  13. --// Services
  14.  
  15. local Players = game:GetService("Players")
  16.  
  17. --\\
  18.  
  19. --// Checks
  20.  
  21. local infected = false
  22.  
  23. --\\
  24.  
  25. local infections = {}
  26. local bindableEvent = game.ReplicatedStorage.BindableEvents.DiseaseTrigger
  27. local infectionsFolder = script.Parent.Infections
  28.  
  29. --// Diseases
  30.  
  31. -- Bacterial
  32.  
  33. local bacterial = script.Parent.Infections.Bacterial
  34. local bacterialMeningitis = bacterial["Bacterial Meningitis"]
  35. local cholera = bacterial.Cholera
  36. local diphtheria = bacterial.Diphtheria
  37. local strepThroat = bacterial["Strep Throat"]
  38. local tuberculosis = bacterial.Tuberculosis
  39. local typhoid = bacterial.Typhoid
  40. local typhus = bacterial.Typhus
  41. local whoopingCough = bacterial["Whooping Cough"]
  42.  
  43. --// Viral
  44.  
  45. local viral = script.Parent.Infections.Viral
  46. local covid19 = viral["C19"]
  47. local ebola = viral.Ebola
  48. local influenza = viral.Influenza
  49. local measles = viral.Measles
  50. local norovirus = viral.Norovirus
  51. local polio = viral.Polio
  52. local respiratorySyncytialVirus = viral["Respiratory Syncytial Virus"]
  53. local rhinitis = viral.Rhinitis
  54. local rotavirus = viral.Rotavirus
  55. local rubella = viral.Rubella
  56. local severeAcuteRespiratorySyndrome = viral["Severe Acute Respiratory Syndrome"]
  57. local shingles = viral.Shingles
  58. local viralMeningitis = viral["Viral Meningitis"]
  59. local yellowFever = viral["Yellow Fever"]
  60.  
  61. --\\
  62.  
  63. --// Parasitic
  64.  
  65. local parasitic = script.Parent.Infections.Parasitic
  66. local amebiasis = parasitic.Amebiasis
  67. local cysticercosis = parasitic.Cysticercosis
  68. local eVermicularis = parasitic["Evermicularis"]
  69. local echinococcosis = parasitic.Echinococcosis
  70. local malaria = parasitic.Malaria
  71. local toxocariasis = parasitic.Toxocariasis
  72. local trypanosomaCruzi = parasitic["Trypanosoma cruzi"]
  73.  
  74. --\\
  75.  
  76. --// Symptoms
  77.  
  78. local symptoms = script.Parent.Infections.Symptoms
  79. local bleeding = symptoms.Bleeding
  80. local conjunctivitis = symptoms.Conjunctivitis
  81. local croup = symptoms.Croup
  82. local cyanosis = symptoms.Cyanosis
  83. local dry_cough = symptoms["Dry Cough"]
  84. local fainting = symptoms.Fainting
  85. local fatigue = symptoms.Fatigue
  86. local fever = symptoms.Fever
  87. local jaundice = symptoms.Jaundice
  88. local nausea = symptoms.Nausea
  89. local runnyNose = symptoms["Runny Nose"]
  90. local sneezing = symptoms.Sneezing
  91. local sweating = symptoms.Sweating
  92. local uncontrollable_cough = symptoms["Uncontrollable Coughing"]
  93. local vomiting = symptoms["Vomiting"]
  94. local wet_cough = symptoms["Wet Cough"]
  95. local wheezing = symptoms["Wheezing"]
  96.  
  97. --\\
  98.  
  99. local diseaseDictionary = {
  100.         amebiasis = {
  101.                 diseaseName = amebiasis.Name,
  102.                 spreadDistance = 10,
  103.                 baseSpreadChance = 500,
  104.                 progressionSpeed = 1,
  105.                 symptomList = {
  106.                         nausea.Name,
  107.                         fever.Name,
  108.                 },
  109.                 vulnerabilities = {
  110.                         "Anti-Parasitic"
  111.                 },
  112.                 extremeVulnerabilities = {
  113.                         "Anti-Parasitic Beta"
  114.                 }
  115.         },
  116.         cysticercosis = {
  117.                 diseaseName = cysticercosis.Name,
  118.                 spreadDistance = 8,
  119.                 baseSpreadChance = 250,
  120.                 progressionSpeed = 1,
  121.                 symptomList = {
  122.                         fainting.Name,
  123.                 },
  124.                 vulnerabilities = {
  125.                         "Anti-Parasitic"
  126.                 },
  127.                 extremeVulnerabilities = {
  128.                         "Anti-Parasitic Alpha"
  129.                 }
  130.         },
  131.         evermicularis = {
  132.                 diseaseName = eVermicularis.Name,
  133.                 spreadDistance = 25,
  134.                 baseSpreadChance = 200,
  135.                 progressionSpeed = 1,  
  136.                 symptomList = {
  137.                         fatigue.Name,
  138.                 },
  139.                 vulnerabilities = {
  140.                         "Anti-Parasitic"
  141.                 },
  142.                 extremeVulnerabilities = {
  143.                         "Anti-Parasitic Beta"
  144.                 }
  145.  
  146.         },
  147.         echinococcosis = {
  148.                 diseaseName = echinococcosis.Name,
  149.                 spreadDistance = 10,
  150.                 baseSpreadChance = 200,
  151.                 progressionSpeed = 1,  
  152.                 symptomList = {
  153.                         wet_cough.Name,
  154.                         fever.Name,
  155.                 },
  156.                 vulnerabilities = {
  157.                         "Anti-Parasitic"
  158.                 },
  159.                 extremeVulnerabilities = {
  160.                         "Anti-Parasitic Charlie"
  161.                 }
  162.         },
  163.         malaria = {
  164.                 diseaseName = malaria.Name,
  165.                 spreadDistance = 50,
  166.                 baseSpreadChance = 200,
  167.                 progressionSpeed = 1,  
  168.                 symptomList = {
  169.                         fever.Name,
  170.                         nausea.Name,
  171.                         jaundice.Name,
  172.                 },
  173.                 vulnerabilities = {
  174.                         "Anti-Parasitic"
  175.                 },
  176.                 extremeVulnerabilities = {
  177.                         "Anti-Parasitic Alpha"
  178.                 }
  179.         },
  180.         toxocariasis = {
  181.                 diseaseName = toxocariasis.Name,
  182.                 spreadDistance = 10,
  183.                 baseSpreadChance = 500,
  184.                 progressionSpeed = 1,  
  185.                 symptomList = {
  186.                         wheezing.Name,
  187.                         wet_cough.Name,
  188.  
  189.                 },
  190.                 vulnerabilities = {
  191.                         "Anti-Parasitic"
  192.                 },
  193.                 extremeVulnerabilities = {
  194.                         "Anti-Parasitic Alpha"
  195.                 }
  196.         },
  197.         trypanosomacruzi = {
  198.                 diseaseName = trypanosomaCruzi.Name,
  199.                 spreadDistance = 30,
  200.                 baseSpreadChance = 250,
  201.                 progressionSpeed = 1,  
  202.                 symptomList = {
  203.                         fever.Name,
  204.                         fatigue.Name,
  205.                 },
  206.                 vulnerabilities = {
  207.                         "Anti-Parasitic"
  208.                 },
  209.                 extremeVulnerabilities = {
  210.                         "Anti-Parasitic Charlie"
  211.                 }
  212.         },
  213.         c19 = {
  214.                 diseaseName = covid19.Name,
  215.                 spreadDistance = 50,
  216.                 baseSpreadChance = 50,
  217.                 progressionSpeed = 1,
  218.                 symptomList = {
  219.                         fever.Name,
  220.                         dry_cough.Name,
  221.                         fatigue.Name,
  222.                 },
  223.                 vulnerabilities = {
  224.                         "Anti-Viral"
  225.                 },
  226.                 extremeVulnerabilities = {
  227.                         "Anti-Viral Beta"
  228.                 }
  229.         },
  230.         ebola = {
  231.                 diseaseName = ebola.Name,
  232.                 spreadDistance = 10,
  233.                 baseSpreadChance = 500,
  234.                 progressionSpeed = 1,  
  235.                 symptomList = {
  236.                         bleeding.Name,
  237.                         fever.Name,
  238.                         fatigue.Name,
  239.                         vomiting.Name,
  240.                 },
  241.                 vulnerabilities = {
  242.                         "Anti-Viral"
  243.                 },
  244.                 extremeVulnerabilities = {
  245.                         "Anti-Viral Charlie"
  246.                 }
  247.         },
  248.         influenza = {
  249.                 diseaseName = influenza.Name,
  250.                 spreadDistance = 40,
  251.                 baseSpreadChance = 50,
  252.                 progressionSpeed = 1,  
  253.                 symptomList = {
  254.                         fever.Name,
  255.                         croup.Name,
  256.                         runnyNose.Name,
  257.                 },
  258.                 vulnerabilities = {
  259.                         "Anti-Viral"
  260.                 },
  261.                 extremeVulnerabilities = {
  262.                         "Anti-Viral Beta"
  263.                 }
  264.         },
  265.         measles = {
  266.                 diseaseName = measles.Name,
  267.                 spreadDistance = 30,
  268.                 baseSpreadChance = 80,
  269.                 progressionSpeed = 1,  
  270.                 symptomList = {
  271.                         fever.Name,
  272.                         fatigue.Name,
  273.                         dry_cough.Name,
  274.                         conjunctivitis.Name,
  275.                         runnyNose.Name,
  276.                 },
  277.                 vulnerabilities = {
  278.                         "Anti-Viral"
  279.                 },
  280.                 extremeVulnerabilities = {
  281.                         "Anti-Viral Alpha"
  282.                 }
  283.         },
  284.         norovirus = {
  285.                 diseaseName = norovirus.Name,
  286.                 spreadDistance = 10,
  287.                 baseSpreadChance = 300,
  288.                 progressionSpeed = 1,
  289.                 symptomList = {
  290.                         vomiting.Name,
  291.                         nausea.Name,
  292.                         fever.Name,
  293.                 },
  294.                 vulnerabilities = {
  295.                         "Anti-Viral"
  296.                 },
  297.                 extremeVulnerabilities = {
  298.                         "Anti-Viral Alpha"
  299.                 }
  300.         },
  301.         polio = {
  302.                 diseaseName = polio.Name,
  303.                 spreadDistance = 10,
  304.                 baseSpreadChance = 400,
  305.                 progressionSpeed = 1,
  306.                 symptomList = {
  307.                         fever.Name,
  308.                         vomiting.Name,
  309.                         fatigue.Name,
  310.                 },
  311.                 vulnerabilities = {
  312.                         "Anti-Viral"
  313.                 },
  314.                 extremeVulnerabilities = {
  315.                         "Anti-Viral Charlie"
  316.                 }
  317.         },
  318.         respiratorysyncytialvirus = {
  319.                 diseaseName = respiratorySyncytialVirus.Name,
  320.                 spreadDistance = 35,
  321.                 baseSpreadChance = 100,
  322.                 progressionSpeed = 1,
  323.                 symptomList = {
  324.                         wet_cough.Name,
  325.                         cyanosis.Name,
  326.                         runnyNose.Name,
  327.                         sneezing.Name,
  328.                         wheezing.Name,
  329.                 },
  330.                 vulnerabilities = {
  331.                         "Anti-Viral"
  332.                 },
  333.                 extremeVulnerabilities = {
  334.                         "Anti-Viral Alpha"
  335.                 }
  336.         },
  337.         rhinitis = {
  338.                 diseaseName = rhinitis.Name,
  339.                 spreadDistance = 30,
  340.                 baseSpreadChance = 30,
  341.                 progressionSpeed = 1,
  342.                 symptomList = {
  343.                         wet_cough.Name,
  344.                         fever.Name,
  345.                         runnyNose.Name,
  346.                         sneezing.Name
  347.                 },
  348.                 vulnerabilities = {
  349.                         "Anti-Viral"
  350.                 },
  351.                 extremeVulnerabilities = {
  352.                         "Anti-Viral Alpha"
  353.                 }
  354.         },
  355.         rotavirus = {
  356.                 diseaseName = rotavirus.Name,
  357.                 spreadDistance = 10,
  358.                 baseSpreadChance = 300,
  359.                 progressionSpeed = 1,
  360.                 symptomList = {
  361.                         fatigue.Name,
  362.                         fever.Name,
  363.                         vomiting.Name,
  364.                         runnyNose.Name,
  365.                 },
  366.                 vulnerabilities = {
  367.                         "Anti-Viral"
  368.                 },
  369.                 extremeVulnerabilities = {
  370.                         "Anti-Viral Charlie"
  371.                 }              
  372.         },
  373.         rubella = {
  374.                 diseaseName = rubella.Name,
  375.                 spreadDistance = 30,
  376.                 baseSpreadChance = 90,
  377.                 progressionSpeed = 1,
  378.                 symptomList = {
  379.                         fever.Name,
  380.                         runnyNose.Name,
  381.                 },
  382.                 vulnerabilities = {
  383.                         "Anti-Viral"
  384.                 },
  385.                 extremeVulnerabilities = {
  386.                         "Anti-Viral Beta"
  387.                 }              
  388.         },
  389.         severeacuterespiratorysyndrome = {
  390.                 diseaseName = severeAcuteRespiratorySyndrome.Name,
  391.                 spreadDistance = 30,
  392.                 baseSpreadChance = 100,
  393.                 progressionSpeed = 1,
  394.                 symptomList = {
  395.                         fever.Name,
  396.                         dry_cough.Name,
  397.                         -- high body temp
  398.                 },
  399.                 vulnerabilities = {
  400.                         "Anti-Viral"
  401.                 },
  402.                 extremeVulnerabilities = {
  403.                         "Anti-Viral Charlie"
  404.                 }              
  405.         },
  406.         shingles = {
  407.                 diseaseName = shingles.Name,
  408.                 spreadDistance = 25,
  409.                 baseSpreadChance = 100,
  410.                 progressionSpeed = 1,
  411.                 symptomList = {
  412.                         fever.Name
  413.                 },
  414.                 vulnerabilities = {
  415.                         "Anti-Viral"
  416.                 },
  417.                 extremeVulnerabilities = {
  418.                         "Anti-Viral Beta"
  419.                 }
  420.         },
  421.         viralmeningitis = {
  422.                 diseaseName = viralMeningitis.Name,
  423.                 spreadDistance = 15,
  424.                 baseSpreadChance = 150,
  425.                 progressionSpeed = 1,
  426.                 symptomList = {
  427.                         fatigue.Name,
  428.                         fever.Name,
  429.                         nausea.Name,
  430.                         vomiting.Name,
  431.                         fainting.Name,
  432.                 },
  433.                 vulnerabilities = {
  434.                         "Anti-Viral"
  435.                 },
  436.                 extremeVulnerabilities = {
  437.                         "Anti-Viral Beta"
  438.                 }
  439.         },
  440.         yellowfever = {
  441.                 diseaseName = yellowFever.Name,
  442.                 spreadDistance = 50,
  443.                 baseSpreadChance = 125,
  444.                 progressionSpeed = 1,
  445.                 symptomList = {
  446.                         jaundice.Name,
  447.                         fatigue.Name,
  448.                         fever.Name,
  449.                         nausea.Name,
  450.                         vomiting.Name,
  451.                 },
  452.                 vulnerabilities = {
  453.                         "Anti-Viral"
  454.                 },
  455.                 extremeVulnerabilities = {
  456.                         "Anti-Viral Alpha"
  457.                 }
  458.         },
  459.         bacterialmeningitis = {
  460.                 diseaseName = bacterialMeningitis.Name,
  461.                 spreadDistance = 20,
  462.                 baseSpreadChance = 200,
  463.                 progressionSpeed = 1,
  464.                 symptomList = {
  465.                         fever.Name,
  466.                         nausea.Name,
  467.                         vomiting.Name,
  468.                         fainting.Name
  469.                 },
  470.                 vulnerabilities = {
  471.                         "Anti-Bacterial"
  472.                 },
  473.                 extremeVulnerabilities = {
  474.                         "Anti-Bacterial Charlie"
  475.                 }
  476.         },
  477.         cholera = {
  478.                 diseaseName = cholera.Name,
  479.                 spreadDistance = 10,
  480.                 baseSpreadChance = 250,
  481.                 progressionSpeed = 1,
  482.                 symptomList = {
  483.                         vomiting.Name,
  484.                 },
  485.                 vulnerabilities = {
  486.                         "Anti-Bacterial"
  487.                 },
  488.                 extremeVulnerabilities = {
  489.                         "Anti-Bacterial Alpha"
  490.                 }      
  491.         },
  492.         diphtheria = {
  493.                 diseaseName = diphtheria.Name,
  494.                 spreadDistance = 5,
  495.                 baseSpreadChance = 100,
  496.                 progressionSpeed = 1,
  497.                 symptomList = {
  498.                         wheezing.Name,
  499.                         runnyNose.Name,
  500.                         fever.Name,
  501.                         fatigue.Name
  502.                 },
  503.                 vulnerabilities = {
  504.                         "Anti-Bacterial"
  505.                 },
  506.                 extremeVulnerabilities = {
  507.                         "Anti-Bacterial Beta"
  508.                 }              
  509.         },
  510.         strepthroat = {
  511.                 diseaseName = strepThroat.Name,
  512.                 spreadDistance = 20,
  513.                 baseSpreadChance = 100,
  514.                 progressionSpeed = 1,
  515.                 symptomList = {
  516.                         fever.Name,
  517.                         croup.Name,
  518.                 },
  519.                 vulnerabilities = {
  520.                         "Anti-Bacterial"
  521.                 },
  522.                 extremeVulnerabilities = {
  523.                         "Anti-Bacterial Charlie"
  524.                 }
  525.         },
  526.         tuberculosis = {
  527.                 diseaseName = tuberculosis.Name,
  528.                 spreadDistance = 30,
  529.                 baseSpreadChance = 75,
  530.                 progressionSpeed = 1,
  531.                 symptomList = {
  532.                         uncontrollable_cough.Name,
  533.                         fatigue.Name,
  534.                         fever.Name,
  535.                 },
  536.                 vulnerabilities = {
  537.                         "Anti-Bacterial"
  538.                 },
  539.                 extremeVulnerabilities = {
  540.                         "Anti-Bacterial Alpha"
  541.                 }              
  542.         },
  543.         typhoid = {
  544.                 diseaseName = typhoid.Name,
  545.                 spreadDistance = 10,
  546.                 baseSpreadChance = 200,
  547.                 progressionSpeed = 1,  
  548.                 symptomList = {
  549.                         dry_cough.Name,
  550.                         nausea.Name,
  551.                 },
  552.                 vulnerabilities = {
  553.                         "Anti-Bacterial"
  554.                 },
  555.                 extremeVulnerabilities = {
  556.                         "Anti-Bacterial Alpha"
  557.                 }
  558.         },
  559.         typhus = {
  560.                 diseaseName = typhus.Name,
  561.                 spreadDistance = 10,
  562.                 baseSpreadChance = 150,
  563.                 progressionSpeed = 1,
  564.                 symptomList = {
  565.                         fever.Name,
  566.                         fatigue.Name,
  567.                 },
  568.                 vulnerabilities = {
  569.                         "Anti-Bacterial"
  570.                 },
  571.                 extremeVulnerabilities = {
  572.                         "Anti-Bacterial Beta"
  573.                 }              
  574.         },
  575.         whoopingcough = {
  576.                 diseaseName = whoopingCough.Name,
  577.                 spreadDistance = 30,
  578.                 baseSpreadChance = 100,
  579.                 progressionSpeed = 1,
  580.                 symptomList = {
  581.                         runnyNose.Name,
  582.                         sneezing.Name,
  583.                         uncontrollable_cough.Name,
  584.                         vomiting.Name,
  585.                 },
  586.                 vulnerabilities = {
  587.                         "Anti-Bacterial"
  588.                 },
  589.                 extremeVulnerabilities = {
  590.                         "Anti-Bacterial Beta"
  591.                 }              
  592.         },
  593. }
  594.  
  595. local medication = script.Parent.Medication
  596.  
  597. local function addSymtpoms(diseaseName)
  598.         for i,symptomsv in pairs(diseaseDictionary[diseaseName]["symptomList"]) do
  599.                 for i,disease in pairs(infectionsFolder:GetDescendants()) do
  600.                         if disease.Name == symptomsv then
  601.                                 disease.Value = false
  602.                                 disease.Value = true
  603.                         end  
  604.                 end
  605.         end
  606. end
  607.  
  608. local function removeSymtpoms(diseaseName)
  609.         for i,symptomsv in pairs(diseaseDictionary[diseaseName]["symptomList"]) do
  610.                 for i,disease in pairs(infectionsFolder:GetDescendants()) do
  611.                         if disease.Name == symptomsv then
  612.                                 disease.Value = false
  613.                         end  
  614.                 end
  615.         end
  616. end
  617.  
  618. local function filter(str)
  619.         return str:gsub(" ",""):lower()
  620. end
  621.  
  622. respiratorySyncytialVirus.Changed:Connect(function()
  623.         if respiratorySyncytialVirus.Value == true then
  624.                 respiratorySyncytialVirus.Progression.Value = 900
  625.                 infected = true
  626.                 table.insert(infections, respiratorySyncytialVirus.Name)
  627.                 addSymtpoms(filter(respiratorySyncytialVirus.Name))
  628.         else
  629.                 table.remove(infections, table.find(infections, respiratorySyncytialVirus.Name))
  630.                 removeSymtpoms(filter(respiratorySyncytialVirus.Name))
  631.                 if #infections == 0 then
  632.                         infected = false
  633.                 end
  634.         end
  635. end)
  636.  
  637. covid19.Changed:Connect(function()
  638.         if covid19.Value == true then
  639.                 covid19.Progression.Value = 900
  640.                 infected = true
  641.                 table.insert(infections, covid19.Name)
  642.                 addSymtpoms(filter(covid19.Name))
  643.         else
  644.                 table.remove(infections, table.find(infections, covid19.Name))
  645.                 removeSymtpoms(filter(covid19.Name))
  646.                 if #infections == 0 then
  647.                         infected = false
  648.                 end
  649.         end
  650. end)
  651.  
  652. polio.Changed:Connect(function()
  653.         if polio.Value == true then
  654.                 polio.Progression.Value = 900
  655.                 infected = true
  656.                 table.insert(infections, polio.Name)
  657.                 addSymtpoms(filter(polio.Name))
  658.         else
  659.                 table.remove(infections, table.find(infections, polio.Name))
  660.                 removeSymtpoms(filter(polio.Name))
  661.                 if #infections == 0 then
  662.                         infected = false
  663.                 end
  664.         end
  665. end)
  666.  
  667. yellowFever.Changed:Connect(function()
  668.         if yellowFever.Value == true then
  669.                 yellowFever.Progression.Value = 900
  670.                 infected = true
  671.                 table.insert(infections, yellowFever.Name)
  672.                 addSymtpoms(filter(yellowFever.Name))
  673.         else
  674.                 table.remove(infections, table.find(infections, yellowFever.Name))
  675.                 removeSymtpoms(filter(yellowFever.Name))
  676.                 if #infections == 0 then
  677.                         infected = false
  678.                 end
  679.         end
  680. end)
  681.  
  682. rubella.Changed:Connect(function()
  683.         if rubella.Value == true then
  684.                 rubella.Progression.Value = 900
  685.                 infected = true
  686.                 table.insert(infections, rubella.Name)
  687.                 addSymtpoms(filter(rubella.Name))
  688.         else
  689.                 table.remove(infections, table.find(infections, rubella.Name))
  690.                 removeSymtpoms(filter(rubella.Name))
  691.                 if #infections == 0 then
  692.                         infected = false
  693.                 end
  694.         end
  695. end)
  696.  
  697. rotavirus.Changed:Connect(function()
  698.         if rotavirus.Value == true then
  699.                 rotavirus.Progression.Value = 900
  700.                 infected = true
  701.                 table.insert(infections, rotavirus.Name)
  702.                 addSymtpoms(filter(rotavirus.Name))
  703.         else
  704.                 table.remove(infections, table.find(infections, rotavirus.Name))
  705.                 removeSymtpoms(filter(rotavirus.Name))
  706.                 if #infections == 0 then
  707.                         infected = false
  708.                 end
  709.         end
  710. end)
  711.  
  712. norovirus.Changed:Connect(function()
  713.         if norovirus.Value == true then
  714.                 norovirus.Progression.Value = 900
  715.                 infected = true
  716.                 table.insert(infections, norovirus.Name)
  717.                 addSymtpoms(filter(norovirus.Name))
  718.         else
  719.                 table.remove(infections, table.find(infections, norovirus.Name))
  720.                 removeSymtpoms(filter(norovirus.Name))
  721.                 if #infections == 0 then
  722.                         infected = false
  723.                 end
  724.         end
  725. end)
  726.  
  727. viralMeningitis.Changed:Connect(function()
  728.         if viralMeningitis.Value == true then
  729.                 viralMeningitis.Progression.Value = 900
  730.                 infected = true
  731.                 table.insert(infections, viralMeningitis.Name)
  732.                 addSymtpoms(filter(viralMeningitis.Name))
  733.         else
  734.                 table.remove(infections, table.find(infections, viralMeningitis.Name))
  735.                 removeSymtpoms(filter(viralMeningitis.Name))
  736.                 if #infections == 0 then
  737.                         infected = false
  738.                 end
  739.         end
  740. end)
  741.  
  742. rotavirus.Changed:Connect(function()
  743.         if rotavirus.Value == true then
  744.                 rotavirus.Progression.Value = 900
  745.                 infected = true
  746.                 table.insert(infections, rotavirus.Name)
  747.                 addSymtpoms(filter(rotavirus.Name))
  748.         else
  749.                 table.remove(infections, table.find(infections, rotavirus.Name))
  750.                 removeSymtpoms(filter(rotavirus.Name))
  751.                 if #infections == 0 then
  752.                         infected = false
  753.                 end
  754.         end
  755. end)
  756.  
  757. measles.Changed:Connect(function()
  758.         if measles.Value == true then
  759.                 measles.Progression.Value = 900
  760.                 infected = true
  761.                 table.insert(infections, measles.Name)
  762.                 addSymtpoms(filter(measles.Name))
  763.         else
  764.                 table.remove(infections, table.find(infections, measles.Name))
  765.                 removeSymtpoms(filter(measles.Name))
  766.                 if #infections == 0 then
  767.                         infected = false
  768.                 end
  769.         end
  770. end)
  771.  
  772. shingles.Changed:Connect(function()
  773.         if shingles.Value == true then
  774.                 shingles.Progression.Value = 900
  775.                 infected = true
  776.                 table.insert(infections, shingles.Name)
  777.                 addSymtpoms(filter(shingles.Name))
  778.         else
  779.                 table.remove(infections, table.find(infections, shingles.Name))
  780.                 removeSymtpoms(filter(shingles.Name))
  781.                 if #infections == 0 then
  782.                         infected = false
  783.                 end
  784.         end
  785. end)
  786.  
  787. severeAcuteRespiratorySyndrome.Changed:Connect(function()
  788.         if severeAcuteRespiratorySyndrome.Value == true then
  789.                 severeAcuteRespiratorySyndrome.Progression.Value = 900
  790.                 infected = true
  791.                 table.insert(infections, severeAcuteRespiratorySyndrome.Name)
  792.                 addSymtpoms(filter(severeAcuteRespiratorySyndrome.Name))
  793.         else
  794.                 table.remove(infections, table.find(infections, severeAcuteRespiratorySyndrome.Name))
  795.                 removeSymtpoms(filter(severeAcuteRespiratorySyndrome.Name))
  796.                 if #infections == 0 then
  797.                         infected = false
  798.                 end
  799.         end
  800. end)
  801.  
  802. rhinitis.Changed:Connect(function()
  803.         if rhinitis.Value == true then
  804.                 rhinitis.Progression.Value = 900
  805.                 infected = true
  806.                 table.insert(infections, rhinitis.Name)
  807.                 addSymtpoms(filter(rhinitis.Name))
  808.         else
  809.                 table.remove(infections, table.find(infections, rhinitis.Name))
  810.                 removeSymtpoms(filter(rhinitis.Name))
  811.                 if #infections == 0 then
  812.                         infected = false
  813.                 end
  814.         end
  815. end)
  816.  
  817. influenza.Changed:Connect(function()
  818.         if influenza.Value == true then
  819.                 influenza.Progression.Value = 900
  820.                 infected = true
  821.                 table.insert(infections, influenza.Name)
  822.                 addSymtpoms(filter(influenza.Name))
  823.         else
  824.                 table.remove(infections, table.find(infections, influenza.Name))
  825.                 removeSymtpoms(filter(influenza.Name))
  826.                 if #infections == 0 then
  827.                         infected = false
  828.                 end
  829.         end
  830. end)
  831.  
  832. ebola.Changed:Connect(function()
  833.         if ebola.Value == true then
  834.                 ebola.Progression.Value = 900
  835.                 infected = true
  836.                 table.insert(infections, ebola.Name)
  837.                 addSymtpoms(filter(ebola.Name))
  838.         else
  839.                 table.remove(infections, table.find(infections, ebola.Name))
  840.                 removeSymtpoms(filter(ebola.Name))
  841.                 if #infections == 0 then
  842.                         infected = false
  843.                 end
  844.         end
  845. end)
  846.  
  847. cysticercosis.Changed:Connect(function()
  848.         if cysticercosis.Value == true then
  849.                 cysticercosis.Progression.Value = 900
  850.                 infected = true
  851.                 table.insert(infections, cysticercosis.Name)
  852.                 addSymtpoms(filter(cysticercosis.Name))
  853.         else
  854.                 table.remove(infections, table.find(infections, cysticercosis.Name))
  855.                 removeSymtpoms(filter(cysticercosis.Name))
  856.                 if #infections == 0 then
  857.                         infected = false
  858.                 end
  859.         end
  860. end)
  861.  
  862. amebiasis.Changed:Connect(function()
  863.         if amebiasis.Value == true then
  864.                 amebiasis.Progression.Value = 900
  865.                 infected = true
  866.                 table.insert(infections, amebiasis.Name)
  867.                 addSymtpoms(filter(amebiasis.Name))
  868.         else
  869.                 table.remove(infections, table.find(infections, amebiasis.Name))
  870.                 removeSymtpoms(filter(amebiasis.Name))
  871.                 if #infections == 0 then
  872.                         infected = false
  873.                 end
  874.         end
  875. end)
  876.  
  877. trypanosomaCruzi.Changed:Connect(function()
  878.         if trypanosomaCruzi.Value == true then
  879.                 trypanosomaCruzi.Progression.Value = 900
  880.                 infected = true
  881.                 table.insert(infections, trypanosomaCruzi.Name)
  882.                 addSymtpoms(filter(trypanosomaCruzi.Name))
  883.         else
  884.                 table.remove(infections, table.find(infections, trypanosomaCruzi.Name))
  885.                 removeSymtpoms(filter(trypanosomaCruzi.Name))
  886.                 if #infections == 0 then
  887.                         infected = false
  888.                 end
  889.         end
  890. end)
  891.  
  892. malaria.Changed:Connect(function()
  893.         if malaria.Value == true then
  894.                 malaria.Progression.Value = 900
  895.                 infected = true
  896.                 table.insert(infections, malaria.Name)
  897.                 addSymtpoms(filter(malaria.Name))
  898.         else
  899.                 table.remove(infections, table.find(infections, malaria.Name))
  900.                 removeSymtpoms(filter(malaria.Name))
  901.                 if #infections == 0 then
  902.                         infected = false
  903.                 end
  904.         end
  905. end)
  906.  
  907. eVermicularis.Changed:Connect(function()
  908.         if eVermicularis.Value == true then
  909.                 eVermicularis.Progression.Value = 900
  910.                 infected = true
  911.                 table.insert(infections, eVermicularis.Name)
  912.                 addSymtpoms(filter(eVermicularis.Name))
  913.         else
  914.                 table.remove(infections, table.find(infections, eVermicularis.Name))
  915.                 removeSymtpoms(filter(eVermicularis.Name))
  916.                 if #infections == 0 then
  917.                         infected = false
  918.                 end
  919.         end
  920. end)
  921.  
  922. echinococcosis.Changed:Connect(function()
  923.         if echinococcosis.Value == true then
  924.                 echinococcosis.Progression.Value = 900
  925.                 infected = true
  926.                 table.insert(infections, echinococcosis.Name)
  927.                 addSymtpoms(filter(echinococcosis.Name))
  928.         else
  929.                 table.remove(infections, table.find(infections, echinococcosis.Name))
  930.                 removeSymtpoms(filter(echinococcosis.Name))
  931.                 if #infections == 0 then
  932.                         infected = false
  933.                 end
  934.         end
  935. end)
  936.  
  937. toxocariasis.Changed:Connect(function()
  938.         if toxocariasis.Value == true then
  939.                 toxocariasis.Progression.Value = 900
  940.                 infected = true
  941.                 table.insert(infections, toxocariasis.Name)
  942.                 addSymtpoms(filter(toxocariasis.Name))
  943.         else
  944.                 table.remove(infections, table.find(infections, toxocariasis.Name))
  945.                 removeSymtpoms(filter(toxocariasis.Name))
  946.                 if #infections == 0 then
  947.                         infected = false
  948.                 end
  949.         end
  950. end)
  951.  
  952. tuberculosis.Changed:Connect(function()
  953.         if tuberculosis.Value == true then
  954.                 tuberculosis.Progression.Value = 900
  955.                 infected = true
  956.                 table.insert(infections, tuberculosis.Name)
  957.                 addSymtpoms(filter(tuberculosis.Name))
  958.         else
  959.                 table.remove(infections, table.find(infections, tuberculosis.Name))
  960.                 removeSymtpoms(filter(tuberculosis.Name))
  961.                 if #infections == 0 then
  962.                         infected = false
  963.                 end
  964.         end
  965. end)
  966.  
  967. whoopingCough.Changed:Connect(function()
  968.         if whoopingCough.Value == true then
  969.                 whoopingCough.Progression.Value = 900
  970.                 infected = true
  971.                 table.insert(infections, whoopingCough.Name)
  972.                 addSymtpoms(filter(whoopingCough.Name))
  973.         else
  974.                 table.remove(infections, table.find(infections, whoopingCough.Name))
  975.                 removeSymtpoms(filter(whoopingCough.Name))
  976.                 if #infections == 0 then
  977.                         infected = false
  978.                 end
  979.         end
  980. end)
  981.  
  982. bacterialMeningitis.Changed:Connect(function()
  983.         if bacterialMeningitis.Value == true then
  984.                 bacterialMeningitis.Progression.Value = 1800
  985.                 infected = true
  986.                 table.insert(infections, bacterialMeningitis.Name)
  987.                 addSymtpoms(filter(bacterialMeningitis.Name))
  988.         else
  989.                 table.remove(infections, table.find(infections, bacterialMeningitis.Name))
  990.                 removeSymtpoms(filter(bacterialMeningitis.Name))
  991.                 if #infections == 0 then
  992.                         infected = false
  993.                 end
  994.         end
  995. end)
  996.  
  997. cholera.Changed:Connect(function()
  998.         if cholera.Value == true then
  999.                 cholera.Progression.Value = 1800
  1000.                 infected = true
  1001.                 table.insert(infections, cholera.Name)
  1002.                 addSymtpoms(filter(cholera.Name))
  1003.         else
  1004.                 table.remove(infections, table.find(infections, cholera.Name))
  1005.                 removeSymtpoms(filter(cholera.Name))
  1006.                 if #infections == 0 then
  1007.                         infected = false
  1008.                 end
  1009.         end
  1010. end)
  1011.  
  1012. diphtheria.Changed:Connect(function()
  1013.         if diphtheria.Value == true then
  1014.                 diphtheria.Progression.Value = 1800
  1015.                 infected = true
  1016.                 table.insert(infections, diphtheria.Name)
  1017.                 addSymtpoms(filter(diphtheria.Name))
  1018.         else
  1019.                 table.remove(infections, table.find(infections, diphtheria.Name))
  1020.                 removeSymtpoms(filter(diphtheria.Name))
  1021.                 if #infections == 0 then
  1022.                         infected = false
  1023.                 end
  1024.         end
  1025. end)
  1026.  
  1027. strepThroat.Changed:Connect(function()
  1028.         if strepThroat.Value == true then
  1029.                 strepThroat.Progression.Value = 1800
  1030.                 infected = true
  1031.                 table.insert(infections, strepThroat.Name)
  1032.                 addSymtpoms(filter(strepThroat.Name))
  1033.         else
  1034.                 table.remove(infections, table.find(infections, strepThroat.Name))
  1035.                 removeSymtpoms(filter(strepThroat.Name))
  1036.                 if #infections == 0 then
  1037.                         infected = false
  1038.                 end
  1039.         end
  1040. end)
  1041.  
  1042. typhoid.Changed:Connect(function()
  1043.         if typhoid.Value == true then
  1044.                 typhoid.Progression.Value = 1800
  1045.                 infected = true
  1046.                 table.insert(infections, typhoid.Name)
  1047.                 addSymtpoms(filter(typhoid.Name))
  1048.         else
  1049.                 table.remove(infections, table.find(infections, typhoid.Name))
  1050.                 removeSymtpoms(filter(typhoid.Name))
  1051.                 if #infections == 0 then
  1052.                         infected = false
  1053.                 end
  1054.         end
  1055. end)
  1056.  
  1057. typhus.Changed:Connect(function()
  1058.         if typhus.Value == true then
  1059.                 typhus.Progression.Value = 1800
  1060.                 infected = true
  1061.                 table.insert(infections, typhus.Name)
  1062.                 addSymtpoms(filter(typhus.Name))
  1063.         else
  1064.                 table.remove(infections, table.find(infections, typhus.Name))
  1065.                 removeSymtpoms(filter(typhus.Name))
  1066.                 if #infections == 0 then
  1067.                         infected = false
  1068.                 end
  1069.         end
  1070. end)
  1071.  
  1072. -- progression changes
  1073.  
  1074. --// Bacterial
  1075.  
  1076. bacterialMeningitis.Progression.Changed:Connect(function()
  1077.         if bacterialMeningitis.Progression.Value == 0 then
  1078.                 bacterialMeningitis.Value = false
  1079.         end
  1080. end)
  1081.  
  1082. cholera.Progression.Changed:Connect(function()
  1083.         if cholera.Progression.Value == 0 then
  1084.                 cholera.Value = false
  1085.         end
  1086. end)
  1087.  
  1088. diphtheria.Progression.Changed:Connect(function()
  1089.         if diphtheria.Progression.Value == 0 then
  1090.                 diphtheria.Value = false
  1091.         end
  1092. end)
  1093.  
  1094. strepThroat.Progression.Changed:Connect(function()
  1095.         if strepThroat.Progression.Value == 0 then
  1096.                 strepThroat.Value = false
  1097.         end
  1098. end)
  1099.  
  1100. tuberculosis.Progression.Changed:Connect(function()
  1101.         if tuberculosis.Progression.Value == 0 then
  1102.                 tuberculosis.Value = false
  1103.         end
  1104. end)
  1105.  
  1106. typhoid.Progression.Changed:Connect(function()
  1107.         if typhoid.Progression.Value == 0 then
  1108.                 typhoid.Value = false
  1109.         end
  1110. end)
  1111.  
  1112. typhus.Progression.Changed:Connect(function()
  1113.         if typhus.Progression.Value == 0 then
  1114.                 typhus.Value = false
  1115.         end
  1116. end)
  1117.  
  1118. whoopingCough.Progression.Changed:Connect(function()
  1119.         if whoopingCough.Progression.Value == 0 then
  1120.                 whoopingCough.Value = false
  1121.         end
  1122. end)
  1123.  
  1124. --// Viral
  1125.  
  1126. covid19.Progression.Changed:Connect(function()
  1127.         if covid19.Progression.Value == 0 then
  1128.                 covid19.Value = false
  1129.         end
  1130. end)
  1131.  
  1132. ebola.Progression.Changed:Connect(function()
  1133.         if ebola.Progression.Value == 0 then
  1134.                 ebola.Value = false
  1135.         end
  1136. end)
  1137.  
  1138. ebola.Progression.Changed:Connect(function()
  1139.         if ebola.Progression.Value == 0 then
  1140.                 ebola.Value = false
  1141.         end
  1142. end)
  1143.  
  1144. influenza.Progression.Changed:Connect(function()
  1145.         if influenza.Progression.Value == 0 then
  1146.                 influenza.Value = false
  1147.         end
  1148. end)
  1149.  
  1150. measles.Progression.Changed:Connect(function()
  1151.         if measles.Progression.Value == 0 then
  1152.                 measles.Value = false
  1153.         end
  1154. end)
  1155.  
  1156. norovirus.Progression.Changed:Connect(function()
  1157.         if norovirus.Progression.Value == 0 then
  1158.                 norovirus.Value = false
  1159.         end
  1160. end)
  1161.  
  1162. polio.Progression.Changed:Connect(function()
  1163.         if polio.Progression.Value == 0 then
  1164.                 polio.Value = false
  1165.         end
  1166. end)
  1167.  
  1168. respiratorySyncytialVirus.Progression.Changed:Connect(function()
  1169.         if respiratorySyncytialVirus.Progression.Value == 0 then
  1170.                 respiratorySyncytialVirus.Value = false
  1171.         end
  1172. end)
  1173.  
  1174. rhinitis.Progression.Changed:Connect(function()
  1175.         if rhinitis.Progression.Value == 0 then
  1176.                 rhinitis.Value = false
  1177.         end
  1178. end)
  1179.  
  1180. rotavirus.Progression.Changed:Connect(function()
  1181.         if rotavirus.Progression.Value == 0 then
  1182.                 rotavirus.Value = false
  1183.         end
  1184. end)
  1185.  
  1186. rubella.Progression.Changed:Connect(function()
  1187.         if rubella.Progression.Value == 0 then
  1188.                 rubella.Value = false
  1189.         end
  1190. end)
  1191.  
  1192. severeAcuteRespiratorySyndrome.Progression.Changed:Connect(function()
  1193.         if severeAcuteRespiratorySyndrome.Progression.Value == 0 then
  1194.                 severeAcuteRespiratorySyndrome.Value = false
  1195.         end
  1196. end)
  1197.  
  1198. shingles.Progression.Changed:Connect(function()
  1199.         if shingles.Progression.Value == 0 then
  1200.                 shingles.Value = false
  1201.         end
  1202. end)
  1203.  
  1204. viralMeningitis.Progression.Changed:Connect(function()
  1205.         if viralMeningitis.Progression.Value == 0 then
  1206.                 viralMeningitis.Value = false
  1207.         end
  1208. end)
  1209.  
  1210. yellowFever.Progression.Changed:Connect(function()
  1211.         if yellowFever.Progression.Value == 0 then
  1212.                 yellowFever.Value = false
  1213.         end
  1214. end)
  1215.  
  1216. --\\
  1217.  
  1218. --// Parasitic
  1219.  
  1220. amebiasis.Progression.Changed:Connect(function()
  1221.         if amebiasis.Progression.Value == 0 then
  1222.                 amebiasis.Value = false
  1223.         end
  1224. end)
  1225.  
  1226. cysticercosis.Progression.Changed:Connect(function()
  1227.         if cysticercosis.Progression.Value == 0 then
  1228.                 cysticercosis.Value = false
  1229.         end
  1230. end)
  1231.  
  1232. eVermicularis.Progression.Changed:Connect(function()
  1233.         if eVermicularis.Progression.Value == 0 then
  1234.                 eVermicularis.Value = false
  1235.         end
  1236. end)
  1237.  
  1238. echinococcosis.Progression.Changed:Connect(function()
  1239.         if echinococcosis.Progression.Value == 0 then
  1240.                 echinococcosis.Value = false
  1241.         end
  1242. end)
  1243.  
  1244. malaria.Progression.Changed:Connect(function()
  1245.         if malaria.Progression.Value == 0 then
  1246.                 malaria.Value = false
  1247.         end
  1248. end)
  1249.  
  1250. toxocariasis.Progression.Changed:Connect(function()
  1251.         if toxocariasis.Progression.Value == 0 then
  1252.                 toxocariasis.Value = false
  1253.         end
  1254. end)
  1255.  
  1256. toxocariasis.Progression.Changed:Connect(function()
  1257.         if toxocariasis.Progression.Value == 0 then
  1258.                 toxocariasis.Value = false
  1259.         end
  1260. end)
  1261.  
  1262. --\\
  1263.  
  1264. --// Symptom Effects
  1265.  
  1266. local diseaseEffects = game.ServerStorage.DiseaseEffects
  1267.  
  1268. local temperature = localCharacter:WaitForChild("Temperature")
  1269. local croupEffect = diseaseEffects.Croup
  1270. local dryCoughEffect = diseaseEffects["Dry Cough"]
  1271. local wetCoughEffect = diseaseEffects["Wet Cough"]
  1272. local uncontrollableCoughEffect = diseaseEffects["Uncontrollable Coughing"]
  1273. local runnyNoseEffect = diseaseEffects["Runny Nose"]
  1274. local vomitEffect = diseaseEffects.Vomiting
  1275. local conjunctivitisEffect = diseaseEffects.Conjunctivitis
  1276. local jaundiceEffect = diseaseEffects.Jaundice
  1277. local cyanosisEffect = diseaseEffects.Cyanosis
  1278. local sneezingEffect = diseaseEffects.Sneezing
  1279. local sweatEffect = diseaseEffects.Sweating
  1280. local wheezeEffect = diseaseEffects.Wheezing
  1281. local faintRemote = game.ReplicatedStorage.Events.Faint
  1282. local nauseaRemote = game.ReplicatedStorage.Events.Nausea
  1283. local torso = localCharacter.UpperTorso
  1284. local playerGui = player.PlayerGui
  1285. local feverTemperature = 2
  1286.  
  1287. fever.Changed:Connect(function()
  1288.         if fever.Value == true then
  1289.                 temperature.Base.Value += feverTemperature
  1290.         else
  1291.                 temperature.Base.Value -= feverTemperature
  1292.         end
  1293. end)
  1294.  
  1295. bleeding.Changed:Connect(function()
  1296.         if bleeding.Value == true then
  1297.                 local PFX = diseaseEffects.Bleeding.Blood
  1298.                 local newPFX = PFX:Clone()
  1299.                 newPFX.Parent = torso
  1300.         else
  1301.                 if torso:FindFirstChild("Blood") then
  1302.                         torso:FindFirstChild("Blood"):Destroy()
  1303.                 end
  1304.         end
  1305. end)
  1306.  
  1307. conjunctivitis.Changed:Connect(function()
  1308.         if conjunctivitis.Value == true then
  1309.                 local newEffect = conjunctivitisEffect.Conjunctivitis:Clone()
  1310.                 newEffect.Parent = playerGui
  1311.         else
  1312.                 if script.Parent.Parent:FindFirstChild("Conjunctivitis") then
  1313.                         playerGui:FindFirstChild("Conjunctivitis"):Destroy()
  1314.                 end
  1315.         end
  1316. end)
  1317.  
  1318. cyanosis.Changed:Connect(function()
  1319.         if cyanosis.Value == true then
  1320.                 for i,v in pairs(cyanosisEffect:GetChildren()) do
  1321.                         for i2, v2 in pairs(localCharacter:GetChildren()) do
  1322.                                 if v2:IsA("BasePart") and v2.Name == v.Name then
  1323.                                         for i3, v3 in pairs(v:GetChildren()) do
  1324.                                                 local newEffect = v3:Clone()
  1325.                                                 newEffect.Parent = v2
  1326.                                         end
  1327.                                 end
  1328.                         end
  1329.                 end                    
  1330.         else
  1331.                 for i,v in pairs(localCharacter:GetDescendants()) do
  1332.                         if v.Name == "Cyanosis" then
  1333.                                 v:Destroy()
  1334.                         end
  1335.                 end
  1336.         end
  1337. end)
  1338.  
  1339. dry_cough.Changed:Connect(function()
  1340.         if dry_cough.Value == true then
  1341.                 for i,v in pairs(dryCoughEffect:GetChildren()) do
  1342.                         local newEffect = v:Clone()
  1343.                         newEffect.Parent = localCharacter.Head
  1344.                 end
  1345.         else
  1346.                 for i,v in pairs(localCharacter.Head:GetChildren()) do
  1347.                         for i2,v2 in pairs(dryCoughEffect:GetChildren()) do
  1348.                                 if v.Name == v2.Name then
  1349.                                         v:Destroy()
  1350.                                 end
  1351.                         end
  1352.                 end
  1353.         end
  1354. end)
  1355.  
  1356. croup.Changed:Connect(function()
  1357.         if croup.Value == true then
  1358.                 for i,v in pairs(croupEffect:GetChildren()) do
  1359.                         local newEffect = v:Clone()
  1360.                         newEffect.Parent = localCharacter.Head
  1361.                 end
  1362.         else
  1363.                 for i,v in pairs(localCharacter.Head:GetChildren()) do
  1364.                         for i2,v2 in pairs(croupEffect:GetChildren()) do
  1365.                                 if v.Name == v2.Name then
  1366.                                         v:Destroy()
  1367.                                 end
  1368.                         end
  1369.                 end
  1370.         end
  1371. end)
  1372.  
  1373. wet_cough.Changed:Connect(function()
  1374.         if wet_cough.Value == true then
  1375.                 for i,v in pairs(wetCoughEffect:GetChildren()) do
  1376.                         local newEffect = v:Clone()
  1377.                         newEffect.Parent = localCharacter.Head
  1378.                 end
  1379.         else
  1380.                 for i,v in pairs(localCharacter.Head:GetChildren()) do
  1381.                         for i2,v2 in pairs(wetCoughEffect:GetChildren()) do
  1382.                                 if v.Name == v2.Name then
  1383.                                         v:Destroy()
  1384.                                 end
  1385.                         end
  1386.                 end
  1387.         end
  1388. end)
  1389.  
  1390. fatigue.Changed:Connect(function()
  1391.         if fatigue.Value == true then
  1392.                 playerGui:FindFirstChild("Fatigue").Enabled = true
  1393.         else
  1394.                 playerGui:FindFirstChild("Fatigue").Enabled = false
  1395.         end
  1396. end)
  1397.  
  1398. jaundice.Changed:Connect(function()
  1399.         if jaundice.Value == true then
  1400.                 for i,v in pairs(jaundiceEffect:GetChildren()) do
  1401.                         for i2, v2 in pairs(localCharacter:GetChildren()) do
  1402.                                 if v2:IsA("BasePart") and v2.Name == v.Name then
  1403.                                         for i3, v3 in pairs(v:GetChildren()) do
  1404.                                                 local newEffect = v3:Clone()
  1405.                                                 newEffect.Parent = v2
  1406.                                         end
  1407.                                 end
  1408.                         end
  1409.                 end                    
  1410.         else
  1411.                 for i,v in pairs(localCharacter:GetDescendants()) do
  1412.                         if v.Name == "Jaundice" then
  1413.                                 v:Destroy()
  1414.                         end
  1415.                 end
  1416.         end
  1417. end)
  1418.  
  1419. nausea.Changed:Connect(function()
  1420.         if nausea.Value == true then
  1421.                 nauseaRemote:FireClient(player, "Start")
  1422.         else
  1423.                 nauseaRemote:FireClient(player, "Stop")
  1424.         end
  1425. end)
  1426.  
  1427. runnyNose.Changed:Connect(function()
  1428.         if runnyNose.Value == true then
  1429.                 local snotAttachment = Instance.new("Attachment")
  1430.                 snotAttachment.Parent = localCharacter.Head
  1431.                 snotAttachment.Name = "snotAttachment"
  1432.                 snotAttachment.Position = Vector3.new(-0.1, 0, -0.619)
  1433.                 for i,v in pairs(runnyNoseEffect:GetChildren()) do
  1434.                         v.Parent = localCharacter.Head.snotAttachment
  1435.                 end
  1436.         else
  1437.                 localCharacter.Head:FindFirstChild("snotAttachment"):Destroy()
  1438.         end
  1439. end)
  1440.  
  1441. sneezing.Changed:Connect(function()
  1442.         if sneezing.Value == true then
  1443.                 local newEffect = sneezingEffect:Clone()
  1444.                 newEffect.Parent = localCharacter.Head
  1445.         else
  1446.                 localCharacter.Head:FindFirstChild("Sneezing"):Destroy()
  1447.         end
  1448. end)
  1449.  
  1450. sweating.Changed:Connect(function()
  1451.         if sweating.Value == true then
  1452.                 local newEffect = sweatEffect.SweatBoundingBox:Clone()
  1453.                 newEffect.Position = localCharacter.Head.Position
  1454.                 local newWeld = Instance.new("Weld")
  1455.                 newWeld.Parent = localCharacter.Head
  1456.                 newWeld.Part0 = localCharacter.Head
  1457.                 newWeld.Part1 = newEffect
  1458.                 newEffect.Parent = localCharacter
  1459.         else
  1460.                 if localCharacter:FindFirstChild("SweatBoundingBox") then
  1461.                         localCharacter:FindFirstChild("SweatBoundingBox"):Destroy()
  1462.                 end
  1463.         end
  1464. end)
  1465.  
  1466. uncontrollable_cough.Changed:Connect(function()
  1467.         if uncontrollable_cough.Value == true then
  1468.                 for i,v in pairs(uncontrollableCoughEffect:GetChildren()) do
  1469.                         local newEffect = v:Clone()
  1470.                         newEffect.Parent = localCharacter.Head
  1471.                 end
  1472.         else
  1473.                 for i,v in pairs(localCharacter.Head:GetChildren()) do
  1474.                         for i2,v2 in pairs(uncontrollableCoughEffect:GetChildren()) do
  1475.                                 if v.Name == v2.Name then
  1476.                                         v:Destroy()
  1477.                                 end
  1478.                         end
  1479.                 end
  1480.         end
  1481. end)
  1482.  
  1483. vomiting.Changed:Connect(function()
  1484.         if vomiting.Value == true then
  1485.                 print("yo")
  1486.                 local vomitAttachment = Instance.new("Attachment")
  1487.                 vomitAttachment.Parent = localCharacter.Head
  1488.                 vomitAttachment.Name = "vomitAttachment"
  1489.                 vomitAttachment.Position = Vector3.new(0, -0.257, -0.638)
  1490.                 for i,v in pairs(vomitEffect:GetChildren()) do
  1491.                         local newEffect = v:Clone()
  1492.                         newEffect.Parent = localCharacter.Head.vomitAttachment
  1493.                 end
  1494.         else
  1495.                 if localCharacter.Head:FindFirstChild("vomitAttachment") then
  1496.                         localCharacter.Head.vomitAttachment:Destroy()
  1497.                 end
  1498.         end
  1499. end)
  1500.  
  1501. wheezing.Changed:Connect(function()
  1502.         if wheezing.Value == true then
  1503.                 for i,v in pairs(wheezeEffect:GetChildren()) do
  1504.                         local newEffect = v:Clone()
  1505.                         newEffect.Parent = localCharacter.Head
  1506.                 end
  1507.                 localCharacter.Head.Wheeze:Play()
  1508.         else
  1509.                 for i,v in pairs(localCharacter.Head:GetChildren()) do
  1510.                         for i2,v2 in pairs(uncontrollableCoughEffect:GetChildren()) do
  1511.                                 if v.Name == v2.Name then
  1512.                                         v:Destroy()
  1513.                                 end
  1514.                         end
  1515.                 end
  1516.         end
  1517. end)
  1518.  
  1519. --\\
  1520.  
  1521. medication.Changed:Connect(function()
  1522.         if medication.Value then
  1523.                 medication.Progression.Value = 30
  1524.         end
  1525. end)
  1526.  
  1527. local fainted = false
  1528. local coughing = false
  1529.  
  1530. bindableEvent.Event:Connect(function(diseaseDefence, playerName, infectionsTable, hygiene)
  1531.         if playerName == tostring(player.Name) then
  1532.                 for i,ailment in pairs(infectionsTable) do
  1533.                         local disease = diseaseDictionary[filter(ailment)]
  1534.                         local diseaseName = disease["diseaseName"]
  1535.                         local spreadChance = disease["baseSpreadChance"]
  1536.                         local chance = math.round((spreadChance/100)*((100+diseaseDefence-hygiene)))
  1537.                         if chance < 1 then
  1538.                                 chance = 1
  1539.                         end
  1540.                         local isInfected = math.random(1, chance)
  1541.                         if isInfected == 1 then
  1542.                                 for i,disease in pairs(infectionsFolder:GetDescendants()) do
  1543.                                         if disease.Name == diseaseName then
  1544.                                                 disease.Value = true
  1545.                                         end
  1546.                                 end
  1547.                         end
  1548.                 end
  1549.         end
  1550. end)
  1551.  
  1552. local DataStoreService = game:GetService("DataStoreService")
  1553.  
  1554. local infectionStore = DataStoreService:GetDataStore("InfectionsDataStore_Beta")
  1555.  
  1556. local success, currentInfections = pcall(function()
  1557.         return infectionStore:GetAsync(player.UserId)
  1558. end)
  1559. if success then
  1560.         for i,v in pairs(currentInfections) do
  1561.                 for i2, v2 in pairs(infectionsFolder:GetDescendants()) do
  1562.                         if v2.Name == v then
  1563.                                 v2.Value = true
  1564.                         end
  1565.                 end
  1566.         end
  1567. end
  1568.  
  1569. Players.PlayerRemoving:Connect(function()
  1570.         local success, errorMessage = pcall(function()
  1571.                 infectionStore:SetAsync(player.UserId, infections)
  1572.         end)
  1573.         if not success then
  1574.                 print(errorMessage)
  1575.         end
  1576. end)
  1577.  
  1578. player.CharacterAdded:Connect(function()
  1579.         localCharacter = player.Character
  1580.         for i,v in pairs(infections) do
  1581.                 addSymtpoms(filter(v))
  1582.         end
  1583. end)
  1584.  
  1585.  
  1586.  
  1587. local params = RaycastParams.new()
  1588. params.FilterDescendantsInstances = {localCharacter}
  1589. params.FilterType = Enum.RaycastFilterType.Blacklist
  1590. params.IgnoreWater = true
  1591.  
  1592.  
  1593. while true do
  1594.         wait(1)
  1595.  
  1596.         if medication.Value then
  1597.                 if medication.Progression.Value > 0 then
  1598.                         medication.Progression.Value -= 1
  1599.                 end
  1600.         end
  1601.  
  1602.         if medication.Progression.Value == 0 then
  1603.                 medication.Value = ""
  1604.         end
  1605.  
  1606.         if bleeding.Value == true then
  1607.                 if localCharacter:FindFirstChild("Humanoid") then
  1608.                         localCharacter.Humanoid:TakeDamage(.1)
  1609.                 end
  1610.         end
  1611.  
  1612.         if dry_cough.Value == true then
  1613.                 local randomChance = math.random(1,10)
  1614.                 if randomChance == 1 and coughing == false then
  1615.                         task.spawn(function()
  1616.                                 coughing = true
  1617.                                 if localCharacter.Head:FindFirstChild("DryCough") then
  1618.                                         localCharacter.Head.DryCough:Play()
  1619.                                         localCharacter.Head.Dry_Cough.Enabled = true
  1620.                                         localCharacter.Head.DryCough.Ended:Wait()
  1621.                                         localCharacter.Head.Dry_Cough.Enabled = false
  1622.                                 end
  1623.                                 coughing = false
  1624.                         end)
  1625.                 end
  1626.         end
  1627.  
  1628.         if croup.Value == true then
  1629.                 local randomChance = math.random(1,10)
  1630.                 if randomChance == 1 and coughing == false then
  1631.                         task.spawn(function()
  1632.                                 coughing = true
  1633.                                 if localCharacter.Head:FindFirstChild("Croup") then
  1634.                                         localCharacter.Head.Croup:Play()
  1635.                                         localCharacter.Head.Croup_Cough.Enabled = true
  1636.                                         localCharacter.Head.Croup.Ended:Wait()
  1637.                                         localCharacter.Head.Croup_Cough.Enabled = false
  1638.                                 end
  1639.                                 coughing = false
  1640.                         end)
  1641.                 end
  1642.         end
  1643.  
  1644.         if uncontrollable_cough.Value == true then
  1645.                 local randomChance = math.random(1,10)
  1646.                 if randomChance == 1 and coughing == false then
  1647.                         task.spawn(function()
  1648.                                 for i = 3, 1, -1 do
  1649.                                         coughing = true
  1650.                                         if localCharacter.Head:FindFirstChild("UncontrollableCough") then
  1651.                                                 localCharacter.Head.UncontrollableCough:Play()
  1652.                                                 localCharacter.Head.Uncontrollable_Cough.Enabled = true
  1653.                                                 localCharacter.Head.UncontrollableCough.Ended:Wait()
  1654.                                                 localCharacter.Head.Uncontrollable_Cough.Enabled = false
  1655.                                                 wait(math.random(.1,1.5))
  1656.                                         end
  1657.                                 end
  1658.                                 coughing = false
  1659.                         end)
  1660.                 end
  1661.         end
  1662.  
  1663.         if wet_cough.Value == true then
  1664.                 local randomChance = math.random(1,10)
  1665.                 if randomChance == 1 and coughing == false then
  1666.                         task.spawn(function()
  1667.                                 coughing = true
  1668.                                 if localCharacter.Head:FindFirstChild("WetCough") then
  1669.                                         localCharacter.Head.WetCough:Play()
  1670.                                         localCharacter.Head.Wet_Cough.Enabled = true
  1671.                                         localCharacter.Head.WetCough.Ended:Wait()
  1672.                                         localCharacter.Head.Wet_Cough.Enabled = false
  1673.                                 end
  1674.                                 coughing = true
  1675.                         end)
  1676.                 end
  1677.         end
  1678.  
  1679.         if fainting.Value == true and fainted == false then
  1680.                 local randomChance = math.random(1,10)
  1681.                 if randomChance == 1 then
  1682.                         task.spawn(function()
  1683.                                 fainted = true
  1684.                                 faintRemote:FireClient(player, math.random(1,5))
  1685.                                 wait(10)
  1686.                                 fainted = false
  1687.                         end)
  1688.                 end
  1689.         end
  1690.  
  1691.         if sneezing.Value == true then
  1692.                 local randomChance = math.random(1,10)
  1693.                 if randomChance == 1 then
  1694.                         task.spawn(function()
  1695.                                 if localCharacter.Head:FindFirstChild("Sneezing") then
  1696.                                         localCharacter.Head.Sneezing.Sneezing.Enabled = true
  1697.                                         localCharacter.Head.Sneezing.Sneeze:Play()
  1698.                                         localCharacter.Head.Sneezing.Sneeze.Ended:Wait()
  1699.                                         localCharacter.Head.Sneezing.Sneezing.Enabled = false
  1700.                                 end
  1701.                         end)
  1702.                 end
  1703.         end
  1704.  
  1705.         if vomiting.Value == true then
  1706.                 local randomChance = math.random(1,5)
  1707.                 if randomChance == 1 then
  1708.                         if localCharacter.Head:FindFirstChild("vomitAttachment") then
  1709.                                 for i,v in pairs(localCharacter.Head.vomitAttachment:GetChildren()) do
  1710.                                         for i2,v2 in pairs(vomitEffect:GetChildren()) do
  1711.                                                 if v2.Name == v.Name then
  1712.                                                         local waitTime = math.random(1,3)
  1713.                                                         task.spawn(function()
  1714.                                                                 v.Enabled = true
  1715.                                                                 wait(waitTime)
  1716.                                                                 v.Enabled = false
  1717.                                                         end)
  1718.                                                 end
  1719.                                         end
  1720.                                 end
  1721.                         end
  1722.                 end
  1723.         end
  1724.  
  1725.         if infected == true then
  1726.                 for i,diseases in pairs(infections) do
  1727.                         local spreadDistance = diseaseDictionary[filter(diseases)]["spreadDistance"]
  1728.                         local progressionSpeed = diseaseDictionary[filter(diseases)]["progressionSpeed"]
  1729.                         local diseaseName = diseaseDictionary[filter(diseases)]["diseaseName"]
  1730.                         for i,v in pairs(infectionsFolder:GetDescendants()) do
  1731.                                 if v.Name == diseaseName then
  1732.                                         diseaseObject = v
  1733.                                 end
  1734.                         end
  1735.                         local diseaseProgression = diseaseObject.Progression
  1736.                         if diseaseProgression.Value ~= 0 then
  1737.                                 for i,v in pairs(diseaseDictionary[filter(diseases)]["vulnerabilities"]) do
  1738.                                         if medication.Value then
  1739.                                                 if medication.Value == v then
  1740.                                                         progressionSpeed = progressionSpeed*2
  1741.                                                 end
  1742.                                         end
  1743.                                 end
  1744.  
  1745.                                 for i,v in pairs(diseaseDictionary[filter(diseases)]["extremeVulnerabilities"]) do
  1746.                                         if medication.Value then
  1747.                                                 if medication.Value == v then
  1748.                                                         progressionSpeed = progressionSpeed*5
  1749.                                                 end
  1750.                                         end
  1751.                                 end
  1752.                                 diseaseProgression.Value -= progressionSpeed
  1753.                                 print(diseaseName.." progression: "..diseaseProgression.Value)
  1754.                         end
  1755.                         for i,char in pairs(Players:GetChildren()) do
  1756.                                 if char ~= player then
  1757.                                         local character = char.Character
  1758.                                         local hrp = character.HumanoidRootPart
  1759.                                         local rayEnd = CFrame.lookAt(localCharacter.HumanoidRootPart.Position, hrp.Position)
  1760.                                         local RayResult = workspace:Raycast(localCharacter.HumanoidRootPart.Position, rayEnd.LookVector * spreadDistance, params)
  1761.  
  1762.                                         if RayResult then
  1763.                                                 local hitpart = RayResult.Instance
  1764.                                                 local model = hitpart:FindFirstAncestorOfClass("Model") or hitpart:FindFirstAncestorOfClass("Tool") or hitpart:FindFirstAncestorOfClass("Accessory")
  1765.                                                 if model then
  1766.                                                         if model:FindFirstChild("Humanoid") then
  1767.                                                                 local diseaseDefence = model:FindFirstChild("DiseaseDefence")
  1768.                                                                 local hygiene = model:FindFirstChild("Hygiene")
  1769.                                                                 bindableEvent:Fire(diseaseDefence.Value, tostring(character.Name), infections, hygiene.Value)
  1770.                                                         elseif model.Parent:FindFirstChild("Humanoid") then
  1771.                                                                 if model.Parent:FindFirstChild("Humanoid") then
  1772.                                                                         local diseaseDefence = model.Parent:FindFirstChild("DiseaseDefence")
  1773.                                                                         local hygiene = model.Parent:FindFirstChild("Hygiene")
  1774.                                                                         bindableEvent:Fire(diseaseDefence.Value, tostring(character.Name), infections, hygiene.Value)
  1775.                                                                 end
  1776.                                                         elseif model.Parent.Parent:FindFirstChild("Humanoid") then
  1777.                                                                 if model.Parent.Parent:FindFirstChild("Humanoid") then
  1778.                                                                         local diseaseDefence = model.Parent.Parent:FindFirstChild("DiseaseDefence")
  1779.                                                                         local hygiene = model.Parent.Parent:FindFirstChild("Hygiene")
  1780.                                                                         bindableEvent:Fire(diseaseDefence.Value, tostring(character.Name), infections, hygiene.Value)
  1781.                                                                 end
  1782.                                                         end
  1783.                                                 end
  1784.                                         end
  1785.                                 else
  1786.                                         -- same person
  1787.                                 end
  1788.                         end
  1789.                 end
  1790.         end
  1791. end

Raw Paste


Login or Register to edit or fork this paste. It's free.