Advertisement
Guest User

Untitled

a guest
Jan 26th, 2020
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 21.81 KB | None | 0 0
  1. //PC CASE
  2. enum Vormfactor {
  3. atx, matx, itx
  4. }
  5.  
  6. //PC CASE KLEUR
  7. enum Kleur {
  8. black = "Black", gray = "Gray", blue = "Blue", white = "White", red = "Red"
  9. }
  10.  
  11. //PC CASE MATERIAL
  12. enum Materiaal {
  13. steel = "Steel", temperedglass = "Tempered Glass", plastic = "Plastic",
  14. aluminum = "aluminum", metal = "Metal"
  15. }
  16.  
  17. //Motherboard + memory geheugentype
  18. enum Geheugentype {
  19. DDR3, DDR4, DDR5
  20. }
  21.  
  22. //Moederboard + CPU overclock
  23. enum Overclock {
  24. Yes = "Yes", No = "No"
  25. }
  26.  
  27. //Motherboard + CPU socket
  28. enum Sockettype {
  29. Intel, AMD
  30. }
  31.  
  32. //Memorysize
  33. enum memorysize {
  34. Twoslots4gb = "2x4", Twoslots8gb = "2x8", Fourslots4gb = "4x4", Fourslots8gb = "4x8",
  35. Twoslots16gb = "2x16", Fourslots16gb = "4x16", Twoslots32gb = "2x32", Fourslots32gb = "4x32"
  36. }
  37.  
  38. //GPU Brand
  39. enum gpubrand {
  40. Inno3D = "Inno3D", PNY = "PNY", KFA2 = "KFA2",
  41. XFX = "XFX", AsusDual = "Asus Dual", SapphirePulse = "Sapphire Pulse",
  42. Gigabyte = "Gigabyte", ASRock = "ASRock"
  43. }
  44.  
  45. //GPU Type
  46. enum gputype {
  47. RTX = "RTX", GTX = "GTX", RX = "RX"
  48. }
  49.  
  50. //Storage Type
  51. enum storagetype {
  52. SSD = "SSD", m2 = "m.2", HDD = "HDD"
  53. }
  54.  
  55. //Storage size in inch
  56. enum storagesize {
  57. SSD = '2.5"', m2 = "m.2", HDD = '3.5"'
  58. }
  59.  
  60. //PSU Brand
  61. enum psubrand {
  62. Corsair = "Corsair", Seasonic = "Seasonic"
  63. }
  64.  
  65. //Component comparing
  66. function compare (waarde1, waarde2){
  67. if(waarde1 == waarde2){
  68. return 0;
  69. }
  70. else{
  71. return 1;
  72. }
  73. }
  74.  
  75. class pcCase {
  76. name: string;
  77. ondersteuntVormFactoren: Vormfactor [] = [];
  78. form: Vormfactor;
  79. color: Kleur;
  80. material: Materiaal;
  81. length: number;
  82. width: number;
  83. height: number;
  84. maxGpuLength: number;
  85. maxCpuCoolerHeight: number;
  86. expSlots: number;
  87. ssdDriveBays: number;
  88. hddDriveBays: number;
  89.  
  90. //Welke vormvactorondersteuning? (0 = ATX, mAX, 1 = mATX en lager, 2 = ITX)
  91. ondersteunt(motherBoard: motherBoard) {
  92. return this.ondersteuntVormFactoren.indexOf (motherBoard.form) >= 0
  93. }
  94.  
  95. formsupport(form) {
  96. while (form < 3) {
  97. this.ondersteuntVormFactoren.push (form);
  98. form++;
  99. }
  100. }
  101.  
  102. //Check if the form factor is correct.
  103. addMotherboardToCase (motherBoard) {
  104. if (this.form <= motherBoard.form) {
  105. console.log("Motherboard added");
  106. }
  107. else {
  108. console.log("This case cannot hold this type of Motherboard.");
  109. }
  110. }
  111.  
  112.  
  113. constructor (strName: string, formfactor: Vormfactor, color: Kleur, material: Materiaal,
  114. numLength: any, numWidth: number, numHeight: number, numGpuLength: number, numCpuCoolerHeight: number,
  115. numExpSlots: number, numSsdDriveBays: number, numHddDriveBays: number,)
  116. {
  117. this.name = strName;
  118. this.form = formfactor;
  119. this.color = color;
  120. this.material = material;
  121. this.length = numLength;
  122. this.height = numHeight;
  123. this.width = numWidth;
  124. this.maxGpuLength = numGpuLength;
  125. this.maxCpuCoolerHeight = numCpuCoolerHeight;
  126. this.expSlots = numExpSlots;
  127. this.ssdDriveBays = numSsdDriveBays;
  128. this.hddDriveBays = numHddDriveBays;
  129. this.formsupport(this.form);
  130. }
  131. };
  132.  
  133. //ATX PC Cases
  134. let coolermastermb520 = new pcCase ("Coolermaster MB520", Vormfactor.atx, Kleur.black, Materiaal.plastic, 496, 217, 468, 410, 165, 7, 2, 4);
  135. let nzxth510 = new pcCase("NZXT H510", Vormfactor.atx, Kleur.white, Materiaal.steel, 428, 210, 468, 381, 160, 7, 3, 3);
  136. let corsairicue220t = new pcCase ("Corsair iCUE 220t", Vormfactor.atx, Kleur.white, Materiaal.steel, 395, 210, 450, 300, 160, 7, 2, 2);
  137. let fractaldesignmeshifyc = new pcCase("Fractal Design Meshify C", Vormfactor.atx, Kleur.black, Materiaal.steel, 395, 212, 440, 315, 172, 7, 3, 2);
  138. let phantekseclipsep300 = new pcCase ("Phantekseclipse P300", Vormfactor.atx, Kleur.black, Materiaal.steel , 400, 200, 450, 330, 160, 7, 2, 2);
  139. let sharkoontg4 = new pcCase ("Sharkoon TG4", Vormfactor.atx, Kleur.black, Materiaal.steel, 455, 200, 430, 375, 160, 6, 4, 2);
  140. //m-ATX PC Cases
  141. let coolermasterq300l = new pcCase ("Coolermaster Q300L", Vormfactor.matx, Kleur.black, Materiaal.steel, 387, 230, 381, 360, 159, 4, 2, 1);
  142. let nzxth400 = new pcCase ("NZXT H400",Vormfactor.matx, Kleur.black, Materiaal.steel, 421, 210, 417, 360, 159, 4, 3, 1);
  143. let corsaircrystal280x = new pcCase ("Corsair Crystal 280X",Vormfactor.matx, Kleur.black, Materiaal.steel, 398, 276, 351, 300, 180, 4, 3, 2);
  144. let phanteksenthooevolv = new pcCase ("Phanteks Enthoo Evolv", Vormfactor.matx, Kleur.gray, Materiaal.aluminum, 400, 230, 453, 319, 192, 4, 2,2);
  145. let fractaldesignfocusgmini = new pcCase ("Fractal Design Focus G mini",Vormfactor.matx, Kleur.black, Materiaal.steel, 464, 205, 383, 380, 165, 4, 1, 2);
  146. let sharkoons1000window = new pcCase ("Sharkoon s1000 Window", Vormfactor.matx, Kleur.red, Materiaal.temperedglass, 453, 195, 402, 400, 150, 4, 2, 2);
  147. //ITX PC Cases
  148. let coolermastermch100 = new pcCase ("Coolermaster MCH100", Vormfactor.itx, Kleur.gray, Materiaal.plastic, 312, 216, 301, 210, 83, 2, 3, 1);
  149. let nzxth210 = new pcCase ("NZXT H210", Vormfactor.itx, Kleur.black, Materiaal.steel, 372, 210, 349, 325, 165, 2, 4, 1);
  150. let fractaldesignnode304 = new pcCase ("Fractal Design Node 304", Vormfactor.itx, Kleur.white, Materiaal.temperedglass, 372, 250, 210, 310, 165, 2, 3, 1);
  151. let phanteksenthooevolvshiftair = new pcCase ("Phanteks Enthoo Evolv Shiftair", Vormfactor.itx, Kleur.gray, Materiaal.metal, 370, 225, 180, 315, 150, 2, 1 ,1);
  152. let sharkoonsharkzonec10 = new pcCase ("Sharkoon Sharkzone C10", Vormfactor.itx, Kleur.gray, Materiaal.metal, 370, 225, 180, 315, 150, 2, 1, 1);
  153.  
  154. //MOTHERBOARD
  155. class motherBoard {
  156. form: Vormfactor;
  157. name: string;
  158. overclock: Overclock;
  159. ramSlots: number;
  160. memorytype: Geheugentype;
  161. ddrSpeed: any;
  162. socket: Sockettype;
  163. pciSlots: number;
  164. m2Slots: number;
  165. sataConnectors: number;
  166. usb31: number;
  167. usb20: number;
  168. rgbHeader: number;
  169. occupiedPCIeSlots: number;
  170.  
  171. constructor (strName: string, formaat: Vormfactor, overclock: Overclock, numRamSlots: number,
  172. anyMemory: any, anyDdrMemory: any, socket: Sockettype, numPciSlots: number, numM2Slots: number,
  173. numSataConnectors: number, numUsb31: number, numUsb20: number, numRgbHeader:number,)
  174. {
  175. this.name = strName;
  176. this.form = formaat;
  177. this.overclock = overclock;
  178. this.ramSlots = numRamSlots;
  179. this.memorytype = anyMemory;
  180. this.ddrSpeed = anyDdrMemory;
  181. this.socket = socket;
  182. this.pciSlots = numPciSlots;
  183. this.m2Slots = numM2Slots;
  184. this.sataConnectors = numSataConnectors;
  185. this.usb31 = numUsb31;
  186. this.usb20 = numUsb20;
  187. this.rgbHeader = numRgbHeader;
  188. this.occupiedPCIeSlots = 0;
  189. }
  190.  
  191. //Check if the socket is correct.
  192. addCpuToMotherboard (cpu) {
  193. if (compare(this.socket, cpu.socket)) {
  194. console.log("CPU added");
  195. }
  196. else {
  197. console.log("This Motherboard cannot hold this type of CPU.");
  198. }
  199. }
  200. //Check if the memory is correct.
  201. addMemoryToMotherboard (memory) {
  202. if (compare(this.memorytype, memory.memorytype)) {
  203. console.log("Memory added");
  204. }
  205. else {
  206. console.log("This Motherboard cannot hold this type of Memory.");
  207. }
  208. }
  209.  
  210. addGPUToMotherboard (gpu) {
  211. if(this.pciSlots > this.occupiedPCIeSlots) {
  212. console.log ("GPU added.");
  213. this.occupiedPCIeSlots++;
  214. }
  215. else {
  216. console.log("This Motherboard cannot have this many GPU's");
  217. }
  218. }
  219. };
  220.  
  221. //ATX Motherboards Intel
  222. let gigabytez390gamingx = new motherBoard ("Gigabyte Z390 GamingX", Vormfactor.atx, Overclock.Yes, 4, Geheugentype.DDR4, "4266MHz", Sockettype.Intel, 2, 2, 6, 5, 2, 1);
  223. let msiz390apro = new motherBoard ("MSI Z390-A Pro", Vormfactor.atx, Overclock.Yes, 4, Geheugentype.DDR4, "4400MHz", Sockettype.Intel, 2, 2, 6, 4, 2, 1);
  224. let asusrogstrixb360fgaming = new motherBoard ("Asus ROG Strix B360-F Gaming", Vormfactor.atx, Overclock.No, 4, Geheugentype.DDR4, "2666MHz", Sockettype.Intel, 2, 2, 6, 3, 4, 1);
  225. let msib360apro = new motherBoard ("MSI 360-A Pro", Vormfactor.atx, Overclock.No, 4, Geheugentype.DDR4, "2666MHz", Sockettype.Intel, 2, 1, 6, 2, 2, 0);
  226. //m-ATX Motherboards Intel
  227. let gigabytez390mgaming = new motherBoard ("Gigabyte Z390M Gaming", Vormfactor.matx, Overclock.No, 4, Geheugentype.DDR4, "4266MHz", Sockettype.Intel, 2, 2, 6, 5, 2, 1);
  228. let asusrogstrixb360ggaming = new motherBoard ("Asus ROG Strix B360-G Gaming", Vormfactor.matx, Overclock.No, 4, Geheugentype.DDR4, "2666MHz", Sockettype.Intel, 1, 2, 6, 6, 0, 1);
  229. //ITX Motherboards Intel
  230. let gigabyteaorusz390pro = new motherBoard ("Gigabyte Aorus I Z390 Pro", Vormfactor.itx, Overclock.Yes, 2, Geheugentype.DDR4, "4400MHz", Sockettype.Intel, 1, 2, 4, 5, 0, 1);
  231. let asusrogstrixb360lggaming = new motherBoard ("Asus ROG Strix B360-l Gaming", Vormfactor.itx, Overclock.No, 2, Geheugentype.DDR4, "2666MHz", Sockettype.Intel, 1, 2, 4, 4, 2, 0);
  232.  
  233. //ATX Motherboards AMD
  234. let gigabyteaorusx570elite = new motherBoard ("Gigabyte Aorus X570 ELITE", Vormfactor.atx, Overclock.Yes, 4, Geheugentype.DDR4, "4000MHz", Sockettype.AMD, 2, 2, 6, 6, 2, 2);
  235. let asusrogstrixb450gaming = new motherBoard ("Asus ROG Strix B450-F Gaming", Vormfactor.atx, Overclock.Yes, 4, Geheugentype.DDR4, "3644MHz", Sockettype.AMD, 2, 2, 6, 6, 2, 2);
  236. let msib450tomahawkmax = new motherBoard ("MSI B450 Tomahawk Max", Vormfactor.atx, Overclock.Yes, 4, Geheugentype.DDR4, "2666MHz", Sockettype.AMD, 1, 1, 6, 6, 2, 2);
  237. //m-ATX Motherboards AMD
  238. let gigabyteaorusb450m = new motherBoard ("Gigabyte Aorus B450-M", Vormfactor.matx, Overclock.Yes, 4, Geheugentype.DDR4, "4266MHz", Sockettype.AMD, 2, 2, 6, 6, 2, 1);
  239. let asusrogstrixb360gaming = new motherBoard ("Asus ROG Strix B360-G Gaming", Vormfactor.matx, Overclock.Yes, 4, Geheugentype.DDR4, "4400MHz", Sockettype.Intel, 1, 1, 6, 6, 0, 1);
  240. // ITX Motherboards AMD
  241. let gigabyteaorusx570 = new motherBoard ("Gigabyte Aorus X570", Vormfactor.itx, Overclock.Yes, 2, Geheugentype.DDR4, "4400MHz", Sockettype.AMD, 1, 2, 4, 5, 1, 1 );
  242. let asusrogstrixb450lgaming = new motherBoard ("Asus ROG Strix B450-l Gaming", Vormfactor.itx, Overclock.Yes, 4, Geheugentype.DDR4, "4400MHz", Sockettype.AMD, 1, 2, 4, 6, 0, 1);
  243.  
  244. //CPU
  245. class cpu {
  246. name: string;
  247. socket: Sockettype;
  248. overclock: Overclock;
  249.  
  250. constructor (strName: string, overclock: Overclock, socket: Sockettype)
  251. {
  252. this.name = strName;
  253. this.overclock = overclock;
  254. this.socket = socket;
  255. }
  256. };
  257.  
  258. //Intel Z390
  259. let i39350k = new cpu ("i3 9350k", Overclock.Yes, Sockettype.Intel);
  260. let i59600k = new cpu ("i5 9600k", Overclock.Yes, Sockettype.Intel);
  261. let i79700k = new cpu ("i7 9700k", Overclock.Yes, Sockettype.Intel);
  262. let i99900k = new cpu ("i9 9900k", Overclock.Yes, Sockettype.Intel);
  263.  
  264. //Intel B630
  265. let i39100f = new cpu("i3 9100f", Overclock.Yes, Sockettype.Intel);
  266. let i59400f = new cpu("i5 9400f", Overclock.Yes, Sockettype.Intel);
  267. let i79700f = new cpu("i7 9700f", Overclock.Yes, Sockettype.Intel);
  268.  
  269. //AMD470/570
  270. let ryzen3600x = new cpu ("Ryzen 3600x", Overclock.Yes, Sockettype.AMD);
  271. let ryzen2700x = new cpu ("Ryzen 2700x", Overclock.Yes, Sockettype.AMD);
  272. let ryzen3800x = new cpu ("Ryzen 3800x", Overclock.Yes, Sockettype.AMD);
  273. let ryzen3950x = new cpu ("Ryzen 3950x", Overclock.Yes, Sockettype.AMD);
  274.  
  275. //AMD non X(B450)
  276. let ryzen2200g = new cpu ("Ryzen 2200g", Overclock.Yes, Sockettype.AMD);
  277. let ryzen2600 = new cpu ("Ryzen 2600", Overclock.Yes, Sockettype.AMD);
  278. let ryzen3600 = new cpu ("Ryzen 3600", Overclock.Yes, Sockettype.AMD);
  279. let ryzen2700 = new cpu ("Ryzen 2700", Overclock.Yes, Sockettype.AMD);
  280.  
  281. //Memory
  282.  
  283. class memory {
  284. name: string;
  285. memory: Geheugentype;
  286. speed: any;
  287. memorySize: memorysize;
  288. totalMemory: number;
  289.  
  290. constructor (strName: string, memory: Geheugentype, anySpeed: any, memorySize: memorysize, numTotalMemory: any)
  291. {
  292. this.name = strName;
  293. this.memory = memory;
  294. this.speed = anySpeed;
  295. this.memorySize = memorySize;
  296. this.totalMemory = numTotalMemory;
  297. }
  298. };
  299.  
  300. //8GB Memory
  301. let corsairvengeance2400 = new memory ("Corsair Vengeance2400MHz", Geheugentype.DDR4, "2400MHz", memorysize.Twoslots4gb, 8);
  302.  
  303. //16GB Memory
  304. let gskillaegis2666 = new memory("G.Skill Aegis 2666", Geheugentype.DDR4, "2666MHz", memorysize.Twoslots8gb, 16);
  305. let corsairvengancergb3000 = new memory("Corsair Vengeance RGB3000", Geheugentype.DDR4, "3000MHz", memorysize.Twoslots8gb, 16);
  306. let gskilltridentz3200 = new memory("G.Skill Trident Z RGB 3200", Geheugentype.DDR4, "3200MHz", memorysize.Twoslots8gb, 16);
  307.  
  308. //32GB Memory
  309. let gskillripjaws2666 = new memory ("G.Skill Ripjaws 2666", Geheugentype.DDR4, "2666MHz", memorysize.Fourslots8gb, 32);
  310. let gskilltridentzrbg2666 = new memory ("G.Skill Trident Z 2666", Geheugentype.DDR4, "2666MHz", memorysize.Fourslots8gb, 32);
  311. let gskilltridentzrgb3200 = new memory ("G.Skill Trident Z 3200", Geheugentype.DDR4, "3200MHz", memorysize.Fourslots8gb, 32);
  312.  
  313. class gpu {
  314. brand: gpubrand;
  315. type: gputype;
  316. name: string;
  317. length: number;
  318. depth: number;
  319. memorySize: number;
  320.  
  321. constructor(brand: gpubrand, type: gputype, strName: string, numLength: number, numDepth: number,
  322. numMemorySize: number) {
  323. this.brand = brand;
  324. this.type = type;
  325. this.name = strName;
  326. this.length = numLength;
  327. this.depth = numDepth;
  328. this.memorySize = numMemorySize;
  329. }
  330. };
  331.  
  332. //NVidia GPU
  333. let nvidiagtx1650 = new gpu (gpubrand.Inno3D, gputype.GTX, "GTX 1650 Super (Inno3D Twin X2)", 220, 113, 4);
  334. let nvidiagtx1660 = new gpu (gpubrand.PNY, gputype.GTX, "GTX 1660 Super (PNY Dual)", 220, 113, 6);
  335. let nvidiagtx1660ti = new gpu (gpubrand.PNY, gputype.GTX, "GTX 1660ti Super (PNY Dual)", 196, 113, 6);
  336. let nvidiartx2060 = new gpu (gpubrand.KFA2, gputype.RTX, "RTX 2060 Super (KFA2)", 245, 134, 6);
  337. let nvidiartx2070 = new gpu (gpubrand.KFA2, gputype.RTX, "RTX 2070 Super(KFA2)", 295, 143, 8);
  338. let nvidiartx2080 = new gpu (gpubrand.KFA2, gputype.RTX, "RTX 2080 Super (KFA2)", 295, 143, 8);
  339. let nvidiartx2080ti = new gpu (gpubrand.KFA2, gputype.RTX, "RTX 2080ti Super (KFA2)", 268, 112, 11);
  340.  
  341. //AMD GPU
  342. let rx570 = new gpu (gpubrand.XFX, gputype.RX, "RX570 (XFX)", 243, 124, 8);
  343. let rx580 = new gpu (gpubrand.AsusDual, gputype.RX, "RX580 (Asus Dual)", 242, 1298, 8);
  344. let rx590 = new gpu (gpubrand.SapphirePulse, gputype.RX, "RX590 (Sapphire Pulse)", 230, 125, 8);
  345. let rx5500xt = new gpu (gpubrand.Gigabyte, gputype.RX, "RX5500XT (Gigabyte)", 281, 115, 8);
  346. let rx5700 = new gpu (gpubrand.ASRock, gputype.RX, "RX5700 (ASRock)", 281, 126, 8);
  347. let rx5700xt = new gpu (gpubrand.ASRock, gputype.RX, "RX5700XT (ASRock)", 324, 145, 8);
  348.  
  349. class storage {
  350. name: string;
  351. type: storagetype;
  352. size: storagesize;
  353. capacity: number;
  354.  
  355. constructor(strName: string, type: storagetype, size: storagesize, numCapacity: number) {
  356. this.name = strName;
  357. this.type = type;
  358. this.size = size;
  359. this.capacity = numCapacity;
  360. }
  361. };
  362.  
  363. //SSD
  364. let ssd120pny = new storage ("PNY120GB", storagetype.SSD, storagesize.SSD, 120);
  365. let ssd250kingston = new storage ("Kingston250GB", storagetype.SSD, storagesize.SSD, 250);
  366. let ssd500kingston = new storage ("Kingston500GB", storagetype.SSD, storagesize.SSD, 500);
  367. let ssd1000gigabyte = new storage ("Kingston1000GB", storagetype.SSD, storagesize.SSD, 1000);
  368.  
  369. //M.2
  370. let m2120wdgreen = new storage ("WD Green 120GB", storagetype.m2, storagesize.m2, 120);
  371. let m2250wdgreen = new storage ("WD Green 250GB", storagetype.m2, storagesize.m2, 250);
  372. let m2500wdgreen = new storage ("WD Green 500GB", storagetype.m2, storagesize.m2, 500);
  373. let m21000wdgreen = new storage ("WD Blue 1000GB", storagetype.m2, storagesize.m2, 1000);
  374.  
  375. //HDD
  376. let hdd500wdblue = new storage ("WD Blue 500GB", storagetype.HDD, storagesize.HDD, 500);
  377. let hdd1000wdblue = new storage ("WD Blue 1000GB", storagetype.HDD, storagesize.HDD, 1000);
  378. let hdd2000wdblue = new storage ("WD Blue 2000GB", storagetype.HDD, storagesize.HDD, 2000);
  379. let hdd4000wdblue = new storage ("WD Blue 4000GB", storagetype.HDD, storagesize.HDD, 4000);
  380.  
  381. class psu {
  382. name: string;
  383. brand: psubrand;
  384. watt: number;
  385.  
  386. constructor (strName: string, brand: psubrand, numWatt: number) {
  387. this.name = strName;
  388. this.brand = brand;
  389. this.watt = numWatt;
  390. }
  391. };
  392.  
  393. //Corsair PSU
  394. let corsairvs450 = new psu ("Corsair VS450", psubrand.Corsair, 450);
  395. let corsairvs550 = new psu ("Corsair VS550", psubrand.Corsair, 550);
  396. let corsaircx650 = new psu ("Corsair CX650", psubrand.Corsair, 650);
  397. let corsairrm750 = new psu ("Corsair RM750", psubrand.Corsair, 750);
  398. let corsairax1000 = new psu ("Corsair AX1000", psubrand.Corsair, 1000);
  399. let corsairax1200i = new psu ("Corsair AX1200i", psubrand.Corsair, 1200);
  400.  
  401. //Seasonic PSU
  402. let seasonics12 = new psu ("Seasonic S12II-Bronze 520W", psubrand.Seasonic, 520);
  403. let seasonicm12 = new psu ("Seasonic M12II Evo 520W", psubrand.Seasonic, 520);
  404. let seasonicfocusplus = new psu ("Seasonic Focus Plus 650 Gold", psubrand.Seasonic, 650);
  405. let seasonicprimeplatinum = new psu ("Seasonic Prime Platinum 1300W", psubrand.Seasonic, 1300);
  406.  
  407. //LOG NEEDS FUNCTION
  408.  
  409. //ATX PC Cases
  410. console.log(coolermastermb520);
  411. console.log(nzxth510);
  412. console.log(corsairicue220t);
  413. console.log(fractaldesignmeshifyc);
  414. console.log(phantekseclipsep300);
  415. console.log(sharkoontg4);
  416.  
  417. //m-ATX PC Cases
  418. console.log(coolermasterq300l);
  419. console.log(nzxth400);
  420. console.log(corsaircrystal280x);
  421. console.log(fractaldesignfocusgmini);
  422. console.log(phanteksenthooevolv);
  423. console.log(sharkoons1000window);
  424.  
  425. //ITX PC Cases
  426. console.log(coolermastermch100);
  427. console.log(nzxth210);
  428. console.log(fractaldesignnode304);
  429. console.log(phanteksenthooevolvshiftair);
  430. console.log(sharkoonsharkzonec10);
  431.  
  432.  
  433. //ATX Motherboards Intel
  434. console.log(gigabytez390gamingx);
  435. console.log(msiz390apro);
  436. console.log(asusrogstrixb360fgaming);
  437. console.log(msib360apro);
  438.  
  439. //m-ATX Motherboards Intel
  440. console.log(gigabytez390mgaming);
  441. console.log(asusrogstrixb360ggaming);
  442.  
  443. //ITX Motherboards Intel
  444. console.log(gigabyteaorusz390pro);
  445. console.log(asusrogstrixb360lggaming);
  446.  
  447. //ATX Motherboards AMD
  448. console.log(gigabyteaorusx570elite);
  449. console.log(asusrogstrixb450gaming);
  450. console.log(msib450tomahawkmax);
  451.  
  452. //m-ATX Motherboards AMD
  453. console.log(gigabyteaorusb450m);
  454. console.log(asusrogstrixb360gaming);
  455.  
  456. //ITX Motherboards AMD
  457. console.log(gigabyteaorusx570);
  458. console.log(asusrogstrixb360lggaming);
  459.  
  460.  
  461. //Intel Z390
  462. console.log(i39350k);
  463. console.log(i59600k);
  464. console.log(i79700k);
  465. console.log(i99900k);
  466.  
  467. //Intel B630
  468. console.log(i39100f);
  469. console.log(i59400f);
  470. console.log(i79700f);
  471.  
  472. //AMD470/570
  473. console.log(ryzen2700x);
  474. console.log(ryzen3600x);
  475. console.log(ryzen3800x);
  476. console.log(ryzen3950x);
  477.  
  478. //AMD non X(B450)
  479. console.log(ryzen2200g);
  480. console.log(ryzen2600);
  481. console.log(ryzen2700);
  482. console.log(ryzen3600);
  483.  
  484. //8GB Memory
  485. console.log(corsairvengeance2400);
  486.  
  487.  
  488. //16GB Memory
  489. console.log(gskillaegis2666);
  490. console.log(corsairvengancergb3000);
  491. console.log(gskilltridentz3200);
  492.  
  493. //32GB Memory
  494. console.log(gskillripjaws2666);
  495. console.log(gskilltridentzrbg2666);
  496. console.log(gskilltridentzrgb3200);
  497.  
  498.  
  499. //Nvidia GPU
  500. console.log(nvidiagtx1650);
  501. console.log(nvidiagtx1660);
  502. console.log(nvidiagtx1660ti);
  503. console.log(nvidiartx2060);
  504. console.log(nvidiartx2070);
  505. console.log(nvidiartx2080);
  506. console.log(nvidiartx2080ti);
  507.  
  508. //AMD GPU
  509. console.log(rx570);
  510. console.log(rx580);
  511. console.log(rx590);
  512. console.log(rx5500xt);
  513. console.log(rx5700);
  514. console.log(rx5700xt);
  515.  
  516. //STORAGE SSD
  517. console.log(ssd120pny);
  518. console.log(ssd250kingston);
  519. console.log(ssd500kingston);
  520. console.log(ssd1000gigabyte);
  521.  
  522. //STORAGE M.2
  523. console.log(m2120wdgreen);
  524. console.log(m2250wdgreen);
  525. console.log(m2500wdgreen);
  526. console.log(m21000wdgreen);
  527.  
  528. //STORAGE HDD
  529. console.log(hdd500wdblue);
  530. console.log(hdd1000wdblue);
  531. console.log(hdd2000wdblue);
  532. console.log(hdd4000wdblue);
  533.  
  534. //Corsair PSU
  535. console.log(corsairvs450);
  536. console.log(corsairvs550);
  537. console.log(corsaircx650);
  538. console.log(corsairrm750);
  539. console.log(corsairax1000);
  540. console.log(corsairax1200i);
  541.  
  542. //Seasonic PSU
  543. console.log(seasonics12);
  544. console.log(seasonicm12);
  545. console.log(seasonicfocusplus);
  546. console.log(seasonicprimeplatinum);
  547.  
  548.  
  549. //ADDING COMPONENT
  550.  
  551. //Component adding Case + Motherboard
  552. coolermastermb520.addMotherboardToCase(gigabyteaorusx570); //True, Component added. ITX Motherboards fits in ATX Case.
  553.  
  554. //Component adding Motherboard + CPU
  555. gigabyteaorusx570.addCpuToMotherboard(i39100f); //False, Component not compatible. Reason: Motherboard uses AMD. CPU uses Intel socket.
  556.  
  557.  
  558. //Component adding Motherboard + Memory
  559. gigabyteaorusx570.addMemoryToMotherboard(gskilltridentz3200); // True, Component added. Both memory are DDR4.
  560.  
  561. //Component adding Motherboard + GPU
  562. gigabyteaorusx570.addGPUToMotherboard(nvidiagtx1650);
  563. gigabyteaorusx570.addGPUToMotherboard(nvidiagtx1650);
  564.  
  565.  
  566. //COMPARE
  567.  
  568. //Component comparing PC Case Form + Motherboard Form
  569. let comparecasemotherboard = compare(coolermastermb520.form, gigabyteaorusx570.form); //True, components compatible. Reason: ITX Motherboard fits in ATX Case.
  570. //Component comparing Motherboard socket type + CPU socket type
  571. let comparecomponentsocket = compare(gigabyteaorusx570elite.overclock, ryzen3600.overclock); //True, components compatible. Reason: Both AMD sockets.
  572.  
  573. //Compare overlock possibilities Motherboard + CPU
  574. let comparecomponentoc = compare(gigabyteaorusx570elite.overclock, ryzen3600.overclock); // True, components both overclock.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement