Advertisement
ajcooper2003

Untitled

Oct 12th, 2016
4,720
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 390.92 KB | None | 0 0
  1.  
  2. Save New Duplicate & Edit Just Text Twitter
  3. 1
  4. 2
  5. 3
  6. 4
  7. 5
  8. 6
  9. 7
  10. 8
  11. 9
  12. 10
  13. 11
  14. 12
  15. 13
  16. 14
  17. 15
  18. 16
  19. 17
  20. 18
  21. 19
  22. 20
  23. 21
  24. 22
  25. 23
  26. 24
  27. 25
  28. 26
  29. 27
  30. 28
  31. 29
  32. 30
  33. 31
  34. 32
  35. 33
  36. 34
  37. 35
  38. 36
  39. 37
  40. 38
  41. 39
  42. 40
  43. 41
  44. 42
  45. 43
  46. 44
  47. 45
  48. 46
  49. 47
  50. 48
  51. 49
  52. 50
  53. 51
  54. 52
  55. 53
  56. 54
  57. 55
  58. 56
  59. 57
  60. 58
  61. 59
  62. 60
  63. 61
  64. 62
  65. 63
  66. 64
  67. 65
  68. 66
  69. 67
  70. 68
  71. 69
  72. 70
  73. 71
  74. 72
  75. 73
  76. 74
  77. 75
  78. 76
  79. 77
  80. 78
  81. 79
  82. 80
  83. 81
  84. 82
  85. 83
  86. 84
  87. 85
  88. 86
  89. 87
  90. 88
  91. 89
  92. 90
  93. 91
  94. 92
  95. 93
  96. 94
  97. 95
  98. 96
  99. 97
  100. 98
  101. 99
  102. 100
  103. 101
  104. 102
  105. 103
  106. 104
  107. 105
  108. 106
  109. 107
  110. 108
  111. 109
  112. 110
  113. 111
  114. 112
  115. 113
  116. 114
  117. 115
  118. 116
  119. 117
  120. 118
  121. 119
  122. 120
  123. 121
  124. 122
  125. 123
  126. 124
  127. 125
  128. 126
  129. 127
  130. 128
  131. 129
  132. 130
  133. 131
  134. 132
  135. 133
  136. 134
  137. 135
  138. 136
  139. 137
  140. 138
  141. 139
  142. 140
  143. 141
  144. 142
  145. 143
  146. 144
  147. 145
  148. 146
  149. 147
  150. 148
  151. 149
  152. 150
  153. 151
  154. 152
  155. 153
  156. 154
  157. 155
  158. 156
  159. 157
  160. 158
  161. 159
  162. 160
  163. 161
  164. 162
  165. 163
  166. 164
  167. 165
  168. 166
  169. 167
  170. 168
  171. 169
  172. 170
  173. 171
  174. 172
  175. 173
  176. 174
  177. 175
  178. 176
  179. 177
  180. 178
  181. 179
  182. 180
  183. 181
  184. 182
  185. 183
  186. 184
  187. 185
  188. 186
  189. 187
  190. 188
  191. 189
  192. 190
  193. 191
  194. 192
  195. 193
  196. 194
  197. 195
  198. 196
  199. 197
  200. 198
  201. 199
  202. 200
  203. 201
  204. 202
  205. 203
  206. 204
  207. 205
  208. 206
  209. 207
  210. 208
  211. 209
  212. 210
  213. 211
  214. 212
  215. 213
  216. 214
  217. 215
  218. 216
  219. 217
  220. 218
  221. 219
  222. 220
  223. 221
  224. 222
  225. 223
  226. 224
  227. 225
  228. 226
  229. 227
  230. 228
  231. 229
  232. 230
  233. 231
  234. 232
  235. 233
  236. 234
  237. 235
  238. 236
  239. 237
  240. 238
  241. 239
  242. 240
  243. 241
  244. 242
  245. 243
  246. 244
  247. 245
  248. 246
  249. 247
  250. 248
  251. 249
  252. 250
  253. 251
  254. 252
  255. 253
  256. 254
  257. 255
  258. 256
  259. 257
  260. 258
  261. 259
  262. 260
  263. 261
  264. 262
  265. 263
  266. 264
  267. 265
  268. 266
  269. 267
  270. 268
  271. 269
  272. 270
  273. 271
  274. 272
  275. 273
  276. 274
  277. 275
  278. 276
  279. 277
  280. 278
  281. 279
  282. 280
  283. 281
  284. 282
  285. 283
  286. 284
  287. 285
  288. 286
  289. 287
  290. 288
  291. 289
  292. 290
  293. 291
  294. 292
  295. 293
  296. 294
  297. 295
  298. 296
  299. 297
  300. 298
  301. 299
  302. 300
  303. 301
  304. 302
  305. 303
  306. 304
  307. 305
  308. 306
  309. 307
  310. 308
  311. 309
  312. 310
  313. 311
  314. 312
  315. 313
  316. 314
  317. 315
  318. 316
  319. 317
  320. 318
  321. 319
  322. 320
  323. 321
  324. 322
  325. 323
  326. 324
  327. 325
  328. 326
  329. 327
  330. 328
  331. 329
  332. 330
  333. 331
  334. 332
  335. 333
  336. 334
  337. 335
  338. 336
  339. 337
  340. 338
  341. 339
  342. 340
  343. 341
  344. 342
  345. 343
  346. 344
  347. 345
  348. 346
  349. 347
  350. 348
  351. 349
  352. 350
  353. 351
  354. 352
  355. 353
  356. 354
  357. 355
  358. 356
  359. 357
  360. 358
  361. 359
  362. 360
  363. 361
  364. 362
  365. 363
  366. 364
  367. 365
  368. 366
  369. 367
  370. 368
  371. 369
  372. 370
  373. 371
  374. 372
  375. 373
  376. 374
  377. 375
  378. 376
  379. 377
  380. 378
  381. 379
  382. 380
  383. 381
  384. 382
  385. 383
  386. 384
  387. 385
  388. 386
  389. 387
  390. 388
  391. 389
  392. 390
  393. 391
  394. 392
  395. 393
  396. 394
  397. 395
  398. 396
  399. 397
  400. 398
  401. 399
  402. 400
  403. 401
  404. 402
  405. 403
  406. 404
  407. 405
  408. 406
  409. 407
  410. 408
  411. 409
  412. 410
  413. 411
  414. 412
  415. 413
  416. 414
  417. 415
  418. 416
  419. 417
  420. 418
  421. 419
  422. 420
  423. 421
  424. 422
  425. 423
  426. 424
  427. 425
  428. 426
  429. 427
  430. 428
  431. 429
  432. 430
  433. 431
  434. 432
  435. 433
  436. 434
  437. 435
  438. 436
  439. 437
  440. 438
  441. 439
  442. 440
  443. 441
  444. 442
  445. 443
  446. 444
  447. 445
  448. 446
  449. 447
  450. 448
  451. 449
  452. 450
  453. 451
  454. 452
  455. 453
  456. 454
  457. 455
  458. 456
  459. 457
  460. 458
  461. 459
  462. 460
  463. 461
  464. 462
  465. 463
  466. 464
  467. 465
  468. 466
  469. 467
  470. 468
  471. 469
  472. 470
  473. 471
  474. 472
  475. 473
  476. 474
  477. 475
  478. 476
  479. 477
  480. 478
  481. 479
  482. 480
  483. 481
  484. 482
  485. 483
  486. 484
  487. 485
  488. 486
  489. 487
  490. 488
  491. 489
  492. 490
  493. 491
  494. 492
  495. 493
  496. 494
  497. 495
  498. 496
  499. 497
  500. 498
  501. 499
  502. 500
  503. 501
  504. 502
  505. 503
  506. 504
  507. 505
  508. 506
  509. 507
  510. 508
  511. 509
  512. 510
  513. 511
  514. 512
  515. 513
  516. 514
  517. 515
  518. 516
  519. 517
  520. 518
  521. 519
  522. 520
  523. 521
  524. 522
  525. 523
  526. 524
  527. 525
  528. 526
  529. 527
  530. 528
  531. 529
  532. 530
  533. 531
  534. 532
  535. 533
  536. 534
  537. 535
  538. 536
  539. 537
  540. 538
  541. 539
  542. 540
  543. 541
  544. 542
  545. 543
  546. 544
  547. 545
  548. 546
  549. 547
  550. 548
  551. 549
  552. 550
  553. 551
  554. 552
  555. 553
  556. 554
  557. 555
  558. 556
  559. 557
  560. 558
  561. 559
  562. 560
  563. 561
  564. 562
  565. 563
  566. 564
  567. 565
  568. 566
  569. 567
  570. 568
  571. 569
  572. 570
  573. 571
  574. 572
  575. 573
  576. 574
  577. 575
  578. 576
  579. 577
  580. 578
  581. 579
  582. 580
  583. 581
  584. 582
  585. 583
  586. 584
  587. 585
  588. 586
  589. 587
  590. 588
  591. 589
  592. 590
  593. 591
  594. 592
  595. 593
  596. 594
  597. 595
  598. 596
  599. 597
  600. 598
  601. 599
  602. 600
  603. 601
  604. 602
  605. 603
  606. 604
  607. 605
  608. 606
  609. 607
  610. 608
  611. 609
  612. 610
  613. 611
  614. 612
  615. 613
  616. 614
  617. 615
  618. 616
  619. 617
  620. 618
  621. 619
  622. 620
  623. 621
  624. 622
  625. 623
  626. 624
  627. 625
  628. 626
  629. 627
  630. 628
  631. 629
  632. 630
  633. 631
  634. 632
  635. 633
  636. 634
  637. 635
  638. 636
  639. 637
  640. 638
  641. 639
  642. 640
  643. 641
  644. 642
  645. 643
  646. 644
  647. 645
  648. 646
  649. 647
  650. 648
  651. 649
  652. 650
  653. 651
  654. 652
  655. 653
  656. 654
  657. 655
  658. 656
  659. 657
  660. 658
  661. 659
  662. 660
  663. 661
  664. 662
  665. 663
  666. 664
  667. 665
  668. 666
  669. 667
  670. 668
  671. 669
  672. 670
  673. 671
  674. 672
  675. 673
  676. 674
  677. 675
  678. 676
  679. 677
  680. 678
  681. 679
  682. 680
  683. 681
  684. 682
  685. 683
  686. 684
  687. 685
  688. 686
  689. 687
  690. 688
  691. 689
  692. 690
  693. 691
  694. 692
  695. 693
  696. 694
  697. 695
  698. 696
  699. 697
  700. 698
  701. 699
  702. 700
  703. 701
  704. 702
  705. 703
  706. 704
  707. 705
  708. 706
  709. 707
  710. 708
  711. 709
  712. 710
  713. 711
  714. 712
  715. 713
  716. 714
  717. 715
  718. 716
  719. 717
  720. 718
  721. 719
  722. 720
  723. 721
  724. 722
  725. 723
  726. 724
  727. 725
  728. 726
  729. 727
  730. 728
  731. 729
  732. 730
  733. 731
  734. 732
  735. 733
  736. 734
  737. 735
  738. 736
  739. 737
  740. 738
  741. 739
  742. 740
  743. 741
  744. 742
  745. 743
  746. 744
  747. 745
  748. 746
  749. 747
  750. 748
  751. 749
  752. 750
  753. 751
  754. 752
  755. 753
  756. 754
  757. 755
  758. 756
  759. 757
  760. 758
  761. 759
  762. 760
  763. 761
  764. 762
  765. 763
  766. 764
  767. 765
  768. 766
  769. 767
  770. 768
  771. 769
  772. 770
  773. 771
  774. 772
  775. 773
  776. 774
  777. 775
  778. 776
  779. 777
  780. 778
  781. 779
  782. 780
  783. 781
  784. 782
  785. 783
  786. 784
  787. 785
  788. 786
  789. 787
  790. 788
  791. 789
  792. 790
  793. 791
  794. 792
  795. 793
  796. 794
  797. 795
  798. 796
  799. 797
  800. 798
  801. 799
  802. 800
  803. 801
  804. 802
  805. 803
  806. 804
  807. 805
  808. 806
  809. 807
  810. 808
  811. 809
  812. 810
  813. 811
  814. 812
  815. 813
  816. 814
  817. 815
  818. 816
  819. 817
  820. 818
  821. 819
  822. 820
  823. 821
  824. 822
  825. 823
  826. 824
  827. 825
  828. 826
  829. 827
  830. 828
  831. 829
  832. 830
  833. 831
  834. 832
  835. 833
  836. 834
  837. 835
  838. 836
  839. 837
  840. 838
  841. 839
  842. 840
  843. 841
  844. 842
  845. 843
  846. 844
  847. 845
  848. 846
  849. 847
  850. 848
  851. 849
  852. 850
  853. 851
  854. 852
  855. 853
  856. 854
  857. 855
  858. 856
  859. 857
  860. 858
  861. 859
  862. 860
  863. 861
  864. 862
  865. 863
  866. 864
  867. 865
  868. 866
  869. 867
  870. 868
  871. 869
  872. 870
  873. 871
  874. 872
  875. 873
  876. 874
  877. 875
  878. 876
  879. 877
  880. 878
  881. 879
  882. 880
  883. 881
  884. 882
  885. 883
  886. 884
  887. 885
  888. 886
  889. 887
  890. 888
  891. 889
  892. 890
  893. 891
  894. 892
  895. 893
  896. 894
  897. 895
  898. 896
  899. 897
  900. 898
  901. 899
  902. 900
  903. 901
  904. 902
  905. 903
  906. 904
  907. 905
  908. 906
  909. 907
  910. 908
  911. 909
  912. 910
  913. 911
  914. 912
  915. 913
  916. 914
  917. 915
  918. 916
  919. 917
  920. 918
  921. 919
  922. 920
  923. 921
  924. 922
  925. 923
  926. 924
  927. 925
  928. 926
  929. 927
  930. 928
  931. 929
  932. 930
  933. 931
  934. 932
  935. 933
  936. 934
  937. 935
  938. 936
  939. 937
  940. 938
  941. 939
  942. 940
  943. 941
  944. 942
  945. 943
  946. 944
  947. 945
  948. 946
  949. 947
  950. 948
  951. 949
  952. 950
  953. 951
  954. 952
  955. 953
  956. 954
  957. 955
  958. 956
  959. 957
  960. 958
  961. 959
  962. 960
  963. 961
  964. 962
  965. 963
  966. 964
  967. 965
  968. 966
  969. 967
  970. 968
  971. 969
  972. 970
  973. 971
  974. 972
  975. 973
  976. 974
  977. 975
  978. 976
  979. 977
  980. 978
  981. 979
  982. 980
  983. 981
  984. 982
  985. 983
  986. 984
  987. 985
  988. 986
  989. 987
  990. 988
  991. 989
  992. 990
  993. 991
  994. 992
  995. 993
  996. 994
  997. 995
  998. 996
  999. 997
  1000. 998
  1001. 999
  1002. 1000
  1003. 1001
  1004. 1002
  1005. 1003
  1006. 1004
  1007. 1005
  1008. 1006
  1009. 1007
  1010. 1008
  1011. 1009
  1012. 1010
  1013. 1011
  1014. 1012
  1015. 1013
  1016. 1014
  1017. 1015
  1018. 1016
  1019. 1017
  1020. 1018
  1021. 1019
  1022. 1020
  1023. 1021
  1024. 1022
  1025. 1023
  1026. 1024
  1027. 1025
  1028. 1026
  1029. 1027
  1030. 1028
  1031. 1029
  1032. 1030
  1033. 1031
  1034. 1032
  1035. 1033
  1036. 1034
  1037. 1035
  1038. 1036
  1039. 1037
  1040. 1038
  1041. 1039
  1042. 1040
  1043. 1041
  1044. 1042
  1045. 1043
  1046. 1044
  1047. 1045
  1048. 1046
  1049. 1047
  1050. 1048
  1051. 1049
  1052. 1050
  1053. 1051
  1054. 1052
  1055. 1053
  1056. 1054
  1057. 1055
  1058. 1056
  1059. 1057
  1060. 1058
  1061. 1059
  1062. 1060
  1063. 1061
  1064. 1062
  1065. 1063
  1066. 1064
  1067. 1065
  1068. 1066
  1069. 1067
  1070. 1068
  1071. 1069
  1072. 1070
  1073. 1071
  1074. 1072
  1075. 1073
  1076. 1074
  1077. 1075
  1078. 1076
  1079. 1077
  1080. 1078
  1081. 1079
  1082. 1080
  1083. 1081
  1084. 1082
  1085. 1083
  1086. 1084
  1087. 1085
  1088. 1086
  1089. 1087
  1090. 1088
  1091. 1089
  1092. 1090
  1093. 1091
  1094. 1092
  1095. 1093
  1096. 1094
  1097. 1095
  1098. 1096
  1099. 1097
  1100. 1098
  1101. 1099
  1102. 1100
  1103. 1101
  1104. 1102
  1105. 1103
  1106. 1104
  1107. 1105
  1108. 1106
  1109. 1107
  1110. 1108
  1111. 1109
  1112. 1110
  1113. 1111
  1114. 1112
  1115. 1113
  1116. 1114
  1117. 1115
  1118. 1116
  1119. 1117
  1120. 1118
  1121. 1119
  1122. 1120
  1123. 1121
  1124. 1122
  1125. 1123
  1126. 1124
  1127. 1125
  1128. 1126
  1129. 1127
  1130. 1128
  1131. 1129
  1132. 1130
  1133. 1131
  1134. 1132
  1135. 1133
  1136. 1134
  1137. 1135
  1138. 1136
  1139. 1137
  1140. 1138
  1141. 1139
  1142. 1140
  1143. 1141
  1144. 1142
  1145. 1143
  1146. 1144
  1147. 1145
  1148. 1146
  1149. 1147
  1150. 1148
  1151. 1149
  1152. 1150
  1153. 1151
  1154. 1152
  1155. 1153
  1156. 1154
  1157. 1155
  1158. 1156
  1159. 1157
  1160. 1158
  1161. 1159
  1162. 1160
  1163. 1161
  1164. 1162
  1165. 1163
  1166. 1164
  1167. 1165
  1168. 1166
  1169. 1167
  1170. 1168
  1171. 1169
  1172. 1170
  1173. 1171
  1174. 1172
  1175. 1173
  1176. 1174
  1177. 1175
  1178. 1176
  1179. 1177
  1180. 1178
  1181. 1179
  1182. 1180
  1183. 1181
  1184. 1182
  1185. 1183
  1186. 1184
  1187. 1185
  1188. 1186
  1189. 1187
  1190. 1188
  1191. 1189
  1192. 1190
  1193. 1191
  1194. 1192
  1195. 1193
  1196. 1194
  1197. 1195
  1198. 1196
  1199. 1197
  1200. 1198
  1201. 1199
  1202. 1200
  1203. 1201
  1204. 1202
  1205. 1203
  1206. 1204
  1207. 1205
  1208. 1206
  1209. 1207
  1210. 1208
  1211. 1209
  1212. 1210
  1213. 1211
  1214. 1212
  1215. 1213
  1216. 1214
  1217. 1215
  1218. 1216
  1219. 1217
  1220. 1218
  1221. 1219
  1222. 1220
  1223. 1221
  1224. 1222
  1225. 1223
  1226. 1224
  1227. 1225
  1228. 1226
  1229. 1227
  1230. 1228
  1231. 1229
  1232. 1230
  1233. 1231
  1234. 1232
  1235. 1233
  1236. 1234
  1237. 1235
  1238. 1236
  1239. 1237
  1240. 1238
  1241. 1239
  1242. 1240
  1243. 1241
  1244. 1242
  1245. 1243
  1246. 1244
  1247. 1245
  1248. 1246
  1249. 1247
  1250. 1248
  1251. 1249
  1252. 1250
  1253. 1251
  1254. 1252
  1255. 1253
  1256. 1254
  1257. 1255
  1258. 1256
  1259. 1257
  1260. 1258
  1261. 1259
  1262. 1260
  1263. 1261
  1264. 1262
  1265. 1263
  1266. 1264
  1267. 1265
  1268. 1266
  1269. 1267
  1270. 1268
  1271. 1269
  1272. 1270
  1273. 1271
  1274. 1272
  1275. 1273
  1276. 1274
  1277. 1275
  1278. 1276
  1279. 1277
  1280. 1278
  1281. 1279
  1282. 1280
  1283. 1281
  1284. 1282
  1285. 1283
  1286. 1284
  1287. 1285
  1288. 1286
  1289. 1287
  1290. 1288
  1291. 1289
  1292. 1290
  1293. 1291
  1294. 1292
  1295. 1293
  1296. 1294
  1297. 1295
  1298. 1296
  1299. 1297
  1300. 1298
  1301. 1299
  1302. 1300
  1303. 1301
  1304. 1302
  1305. 1303
  1306. 1304
  1307. 1305
  1308. 1306
  1309. 1307
  1310. 1308
  1311. 1309
  1312. 1310
  1313. 1311
  1314. 1312
  1315. 1313
  1316. 1314
  1317. 1315
  1318. 1316
  1319. 1317
  1320. 1318
  1321. 1319
  1322. 1320
  1323. 1321
  1324. 1322
  1325. 1323
  1326. 1324
  1327. 1325
  1328. 1326
  1329. 1327
  1330. 1328
  1331. 1329
  1332. 1330
  1333. 1331
  1334. 1332
  1335. 1333
  1336. 1334
  1337. 1335
  1338. 1336
  1339. 1337
  1340. 1338
  1341. 1339
  1342. 1340
  1343. 1341
  1344. 1342
  1345. 1343
  1346. 1344
  1347. 1345
  1348. 1346
  1349. 1347
  1350. 1348
  1351. 1349
  1352. 1350
  1353. 1351
  1354. 1352
  1355. 1353
  1356. 1354
  1357. 1355
  1358. 1356
  1359. 1357
  1360. 1358
  1361. 1359
  1362. 1360
  1363. 1361
  1364. 1362
  1365. 1363
  1366. 1364
  1367. 1365
  1368. 1366
  1369. 1367
  1370. 1368
  1371. 1369
  1372. 1370
  1373. 1371
  1374. 1372
  1375. 1373
  1376. 1374
  1377. 1375
  1378. 1376
  1379. 1377
  1380. 1378
  1381. 1379
  1382. 1380
  1383. 1381
  1384. 1382
  1385. 1383
  1386. 1384
  1387. 1385
  1388. 1386
  1389. 1387
  1390. 1388
  1391. 1389
  1392. 1390
  1393. 1391
  1394. 1392
  1395. 1393
  1396. 1394
  1397. 1395
  1398. 1396
  1399. 1397
  1400. 1398
  1401. 1399
  1402. 1400
  1403. 1401
  1404. 1402
  1405. 1403
  1406. 1404
  1407. 1405
  1408. 1406
  1409. 1407
  1410. 1408
  1411. 1409
  1412. 1410
  1413. 1411
  1414. 1412
  1415. 1413
  1416. 1414
  1417. 1415
  1418. 1416
  1419. 1417
  1420. 1418
  1421. 1419
  1422. 1420
  1423. 1421
  1424. 1422
  1425. 1423
  1426. 1424
  1427. 1425
  1428. 1426
  1429. 1427
  1430. 1428
  1431. 1429
  1432. 1430
  1433. 1431
  1434. 1432
  1435. 1433
  1436. 1434
  1437. 1435
  1438. 1436
  1439. 1437
  1440. 1438
  1441. 1439
  1442. 1440
  1443. 1441
  1444. 1442
  1445. 1443
  1446. 1444
  1447. 1445
  1448. 1446
  1449. 1447
  1450. 1448
  1451. 1449
  1452. 1450
  1453. 1451
  1454. 1452
  1455. 1453
  1456. 1454
  1457. 1455
  1458. 1456
  1459. 1457
  1460. 1458
  1461. 1459
  1462. 1460
  1463. 1461
  1464. 1462
  1465. 1463
  1466. 1464
  1467. 1465
  1468. 1466
  1469. 1467
  1470. 1468
  1471. 1469
  1472. 1470
  1473. 1471
  1474. 1472
  1475. 1473
  1476. 1474
  1477. 1475
  1478. 1476
  1479. 1477
  1480. 1478
  1481. 1479
  1482. 1480
  1483. 1481
  1484. 1482
  1485. 1483
  1486. 1484
  1487. 1485
  1488. 1486
  1489. 1487
  1490. 1488
  1491. 1489
  1492. 1490
  1493. 1491
  1494. 1492
  1495. 1493
  1496. 1494
  1497. 1495
  1498. 1496
  1499. 1497
  1500. 1498
  1501. 1499
  1502. 1500
  1503. 1501
  1504. 1502
  1505. 1503
  1506. 1504
  1507. 1505
  1508. 1506
  1509. 1507
  1510. 1508
  1511. 1509
  1512. 1510
  1513. 1511
  1514. 1512
  1515. 1513
  1516. 1514
  1517. 1515
  1518. 1516
  1519. 1517
  1520. 1518
  1521. 1519
  1522. 1520
  1523. 1521
  1524. 1522
  1525. 1523
  1526. 1524
  1527. 1525
  1528. 1526
  1529. 1527
  1530. 1528
  1531. 1529
  1532. 1530
  1533. 1531
  1534. 1532
  1535. 1533
  1536. 1534
  1537. 1535
  1538. 1536
  1539. 1537
  1540. 1538
  1541. 1539
  1542. 1540
  1543. 1541
  1544. 1542
  1545. 1543
  1546. 1544
  1547. 1545
  1548. 1546
  1549. 1547
  1550. 1548
  1551. 1549
  1552. 1550
  1553. 1551
  1554. 1552
  1555. 1553
  1556. 1554
  1557. 1555
  1558. 1556
  1559. 1557
  1560. 1558
  1561. 1559
  1562. 1560
  1563. 1561
  1564. 1562
  1565. 1563
  1566. 1564
  1567. 1565
  1568. 1566
  1569. 1567
  1570. 1568
  1571. 1569
  1572. 1570
  1573. 1571
  1574. 1572
  1575. 1573
  1576. 1574
  1577. 1575
  1578. 1576
  1579. 1577
  1580. 1578
  1581. 1579
  1582. 1580
  1583. 1581
  1584. 1582
  1585. 1583
  1586. 1584
  1587. 1585
  1588. 1586
  1589. 1587
  1590. 1588
  1591. 1589
  1592. 1590
  1593. 1591
  1594. 1592
  1595. 1593
  1596. 1594
  1597. 1595
  1598. 1596
  1599. 1597
  1600. 1598
  1601. 1599
  1602. 1600
  1603. 1601
  1604. 1602
  1605. 1603
  1606. 1604
  1607. 1605
  1608. 1606
  1609. 1607
  1610. 1608
  1611. 1609
  1612. 1610
  1613. 1611
  1614. 1612
  1615. 1613
  1616. 1614
  1617. 1615
  1618. 1616
  1619. 1617
  1620. 1618
  1621. 1619
  1622. 1620
  1623. 1621
  1624. 1622
  1625. 1623
  1626. 1624
  1627. 1625
  1628. 1626
  1629. 1627
  1630. 1628
  1631. 1629
  1632. 1630
  1633. 1631
  1634. 1632
  1635. 1633
  1636. 1634
  1637. 1635
  1638. 1636
  1639. 1637
  1640. 1638
  1641. 1639
  1642. 1640
  1643. 1641
  1644. 1642
  1645. 1643
  1646. 1644
  1647. 1645
  1648. 1646
  1649. 1647
  1650. 1648
  1651. 1649
  1652. 1650
  1653. 1651
  1654. 1652
  1655. 1653
  1656. 1654
  1657. 1655
  1658. 1656
  1659. 1657
  1660. 1658
  1661. 1659
  1662. 1660
  1663. 1661
  1664. 1662
  1665. 1663
  1666. 1664
  1667. 1665
  1668. 1666
  1669. 1667
  1670. 1668
  1671. 1669
  1672. 1670
  1673. 1671
  1674. 1672
  1675. 1673
  1676. 1674
  1677. 1675
  1678. 1676
  1679. 1677
  1680. 1678
  1681. 1679
  1682. 1680
  1683. 1681
  1684. 1682
  1685. 1683
  1686. 1684
  1687. 1685
  1688. 1686
  1689. 1687
  1690. 1688
  1691. 1689
  1692. 1690
  1693. 1691
  1694. 1692
  1695. 1693
  1696. 1694
  1697. 1695
  1698. 1696
  1699. 1697
  1700. 1698
  1701. 1699
  1702. 1700
  1703. 1701
  1704. 1702
  1705. 1703
  1706. 1704
  1707. 1705
  1708. 1706
  1709. 1707
  1710. 1708
  1711. 1709
  1712. 1710
  1713. 1711
  1714. 1712
  1715. 1713
  1716. 1714
  1717. 1715
  1718. 1716
  1719. 1717
  1720. 1718
  1721. 1719
  1722. 1720
  1723. 1721
  1724. 1722
  1725. 1723
  1726. 1724
  1727. 1725
  1728. 1726
  1729. 1727
  1730. 1728
  1731. 1729
  1732. 1730
  1733. 1731
  1734. 1732
  1735. 1733
  1736. 1734
  1737. 1735
  1738. 1736
  1739. 1737
  1740. 1738
  1741. 1739
  1742. 1740
  1743. 1741
  1744. 1742
  1745. 1743
  1746. 1744
  1747. 1745
  1748. 1746
  1749. 1747
  1750. 1748
  1751. 1749
  1752. 1750
  1753. 1751
  1754. 1752
  1755. 1753
  1756. 1754
  1757. 1755
  1758. 1756
  1759. 1757
  1760. 1758
  1761. 1759
  1762. 1760
  1763. 1761
  1764. 1762
  1765. 1763
  1766. 1764
  1767. 1765
  1768. 1766
  1769. 1767
  1770. 1768
  1771. 1769
  1772. 1770
  1773. 1771
  1774. 1772
  1775. 1773
  1776. 1774
  1777. 1775
  1778. 1776
  1779. 1777
  1780. 1778
  1781. 1779
  1782. 1780
  1783. 1781
  1784. 1782
  1785. 1783
  1786. 1784
  1787. 1785
  1788. 1786
  1789. 1787
  1790. 1788
  1791. 1789
  1792. 1790
  1793. 1791
  1794. 1792
  1795. 1793
  1796. 1794
  1797. 1795
  1798. 1796
  1799. 1797
  1800. 1798
  1801. 1799
  1802. 1800
  1803. 1801
  1804. 1802
  1805. 1803
  1806. 1804
  1807. 1805
  1808. 1806
  1809. 1807
  1810. 1808
  1811. 1809
  1812. 1810
  1813. 1811
  1814. 1812
  1815. 1813
  1816. 1814
  1817. 1815
  1818. 1816
  1819. 1817
  1820. 1818
  1821. 1819
  1822. 1820
  1823. 1821
  1824. 1822
  1825. 1823
  1826. 1824
  1827. 1825
  1828. 1826
  1829. 1827
  1830. 1828
  1831. 1829
  1832. 1830
  1833. 1831
  1834. 1832
  1835. 1833
  1836. 1834
  1837. 1835
  1838. 1836
  1839. 1837
  1840. 1838
  1841. 1839
  1842. 1840
  1843. 1841
  1844. 1842
  1845. 1843
  1846. 1844
  1847. 1845
  1848. 1846
  1849. 1847
  1850. 1848
  1851. 1849
  1852. 1850
  1853. 1851
  1854. 1852
  1855. 1853
  1856. 1854
  1857. 1855
  1858. 1856
  1859. 1857
  1860. 1858
  1861. 1859
  1862. 1860
  1863. 1861
  1864. 1862
  1865. 1863
  1866. 1864
  1867. 1865
  1868. 1866
  1869. 1867
  1870. 1868
  1871. 1869
  1872. 1870
  1873. 1871
  1874. 1872
  1875. 1873
  1876. 1874
  1877. 1875
  1878. 1876
  1879. 1877
  1880. 1878
  1881. 1879
  1882. 1880
  1883. 1881
  1884. 1882
  1885. 1883
  1886. 1884
  1887. 1885
  1888. 1886
  1889. 1887
  1890. 1888
  1891. 1889
  1892. 1890
  1893. 1891
  1894. 1892
  1895. 1893
  1896. 1894
  1897. 1895
  1898. 1896
  1899. 1897
  1900. 1898
  1901. 1899
  1902. 1900
  1903. 1901
  1904. 1902
  1905. 1903
  1906. 1904
  1907. 1905
  1908. 1906
  1909. 1907
  1910. 1908
  1911. 1909
  1912. 1910
  1913. 1911
  1914. 1912
  1915. 1913
  1916. 1914
  1917. 1915
  1918. 1916
  1919. 1917
  1920. 1918
  1921. 1919
  1922. 1920
  1923. 1921
  1924. 1922
  1925. 1923
  1926. 1924
  1927. 1925
  1928. 1926
  1929. 1927
  1930. 1928
  1931. 1929
  1932. 1930
  1933. 1931
  1934. 1932
  1935. 1933
  1936. 1934
  1937. 1935
  1938. 1936
  1939. 1937
  1940. 1938
  1941. 1939
  1942. 1940
  1943. 1941
  1944. 1942
  1945. 1943
  1946. 1944
  1947. 1945
  1948. 1946
  1949. 1947
  1950. 1948
  1951. 1949
  1952. 1950
  1953. 1951
  1954. 1952
  1955. 1953
  1956. 1954
  1957. 1955
  1958. 1956
  1959. 1957
  1960. 1958
  1961. 1959
  1962. 1960
  1963. 1961
  1964. 1962
  1965. 1963
  1966. 1964
  1967. 1965
  1968. 1966
  1969. 1967
  1970. 1968
  1971. 1969
  1972. 1970
  1973. 1971
  1974. 1972
  1975. 1973
  1976. 1974
  1977. 1975
  1978. 1976
  1979. 1977
  1980. 1978
  1981. 1979
  1982. 1980
  1983. 1981
  1984. 1982
  1985. 1983
  1986. 1984
  1987. 1985
  1988. 1986
  1989. 1987
  1990. 1988
  1991. 1989
  1992. 1990
  1993. 1991
  1994. 1992
  1995. 1993
  1996. 1994
  1997. 1995
  1998. 1996
  1999. 1997
  2000. 1998
  2001. 1999
  2002. 2000
  2003. 2001
  2004. 2002
  2005. 2003
  2006. 2004
  2007. 2005
  2008. 2006
  2009. 2007
  2010. 2008
  2011. 2009
  2012. 2010
  2013. 2011
  2014. 2012
  2015. 2013
  2016. 2014
  2017. 2015
  2018. 2016
  2019. 2017
  2020. 2018
  2021. 2019
  2022. 2020
  2023. 2021
  2024. 2022
  2025. 2023
  2026. 2024
  2027. 2025
  2028. 2026
  2029. 2027
  2030. 2028
  2031. 2029
  2032. 2030
  2033. 2031
  2034. 2032
  2035. 2033
  2036. 2034
  2037. 2035
  2038. 2036
  2039. 2037
  2040. 2038
  2041. 2039
  2042. 2040
  2043. 2041
  2044. 2042
  2045. 2043
  2046. 2044
  2047. 2045
  2048. 2046
  2049. 2047
  2050. 2048
  2051. 2049
  2052. 2050
  2053. 2051
  2054. 2052
  2055. 2053
  2056. 2054
  2057. 2055
  2058. 2056
  2059. 2057
  2060. 2058
  2061. 2059
  2062. 2060
  2063. 2061
  2064. 2062
  2065. 2063
  2066. 2064
  2067. 2065
  2068. 2066
  2069. 2067
  2070. 2068
  2071. 2069
  2072. 2070
  2073. 2071
  2074. 2072
  2075. 2073
  2076. 2074
  2077. 2075
  2078. 2076
  2079. 2077
  2080. 2078
  2081. 2079
  2082. 2080
  2083. 2081
  2084. 2082
  2085. 2083
  2086. 2084
  2087. 2085
  2088. 2086
  2089. 2087
  2090. 2088
  2091. 2089
  2092. 2090
  2093. 2091
  2094. 2092
  2095. 2093
  2096. 2094
  2097. 2095
  2098. 2096
  2099. 2097
  2100. 2098
  2101. 2099
  2102. 2100
  2103. 2101
  2104. 2102
  2105. 2103
  2106. 2104
  2107. 2105
  2108. 2106
  2109. 2107
  2110. 2108
  2111. 2109
  2112. 2110
  2113. 2111
  2114. 2112
  2115. 2113
  2116. 2114
  2117. 2115
  2118. 2116
  2119. 2117
  2120. 2118
  2121. 2119
  2122. 2120
  2123. 2121
  2124. 2122
  2125. 2123
  2126. 2124
  2127. 2125
  2128. 2126
  2129. 2127
  2130. 2128
  2131. 2129
  2132. 2130
  2133. 2131
  2134. 2132
  2135. 2133
  2136. 2134
  2137. 2135
  2138. 2136
  2139. 2137
  2140. 2138
  2141. 2139
  2142. 2140
  2143. 2141
  2144. 2142
  2145. 2143
  2146. 2144
  2147. 2145
  2148. 2146
  2149. 2147
  2150. 2148
  2151. 2149
  2152. 2150
  2153. 2151
  2154. 2152
  2155. 2153
  2156. 2154
  2157. 2155
  2158. 2156
  2159. 2157
  2160. 2158
  2161. 2159
  2162. 2160
  2163. 2161
  2164. 2162
  2165. 2163
  2166. 2164
  2167. 2165
  2168. 2166
  2169. 2167
  2170. 2168
  2171. 2169
  2172. 2170
  2173. 2171
  2174. 2172
  2175. 2173
  2176. 2174
  2177. 2175
  2178. 2176
  2179. 2177
  2180. 2178
  2181. 2179
  2182. 2180
  2183. 2181
  2184. 2182
  2185. 2183
  2186. 2184
  2187. 2185
  2188. 2186
  2189. 2187
  2190. 2188
  2191. 2189
  2192. 2190
  2193. 2191
  2194. 2192
  2195. 2193
  2196. 2194
  2197. 2195
  2198. 2196
  2199. 2197
  2200. 2198
  2201. 2199
  2202. 2200
  2203. 2201
  2204. 2202
  2205. 2203
  2206. 2204
  2207. 2205
  2208. 2206
  2209. 2207
  2210. 2208
  2211. 2209
  2212. 2210
  2213. 2211
  2214. 2212
  2215. 2213
  2216. 2214
  2217. 2215
  2218. 2216
  2219. 2217
  2220. 2218
  2221. 2219
  2222. 2220
  2223. 2221
  2224. 2222
  2225. 2223
  2226. 2224
  2227. 2225
  2228. 2226
  2229. 2227
  2230. 2228
  2231. 2229
  2232. 2230
  2233. 2231
  2234. 2232
  2235. 2233
  2236. 2234
  2237. 2235
  2238. 2236
  2239. 2237
  2240. 2238
  2241. 2239
  2242. 2240
  2243. 2241
  2244. 2242
  2245. 2243
  2246. 2244
  2247. 2245
  2248. 2246
  2249. 2247
  2250. 2248
  2251. 2249
  2252. 2250
  2253. 2251
  2254. 2252
  2255. 2253
  2256. 2254
  2257. 2255
  2258. 2256
  2259. 2257
  2260. 2258
  2261. 2259
  2262. 2260
  2263. 2261
  2264. 2262
  2265. 2263
  2266. 2264
  2267. 2265
  2268. 2266
  2269. 2267
  2270. 2268
  2271. 2269
  2272. 2270
  2273. 2271
  2274. 2272
  2275. 2273
  2276. 2274
  2277. 2275
  2278. 2276
  2279. 2277
  2280. 2278
  2281. 2279
  2282. 2280
  2283. 2281
  2284. 2282
  2285. 2283
  2286. 2284
  2287. 2285
  2288. 2286
  2289. 2287
  2290. 2288
  2291. 2289
  2292. 2290
  2293. 2291
  2294. 2292
  2295. 2293
  2296. 2294
  2297. 2295
  2298. 2296
  2299. 2297
  2300. 2298
  2301. 2299
  2302. 2300
  2303. 2301
  2304. 2302
  2305. 2303
  2306. 2304
  2307. 2305
  2308. 2306
  2309. 2307
  2310. 2308
  2311. 2309
  2312. 2310
  2313. 2311
  2314. 2312
  2315. 2313
  2316. 2314
  2317. 2315
  2318. 2316
  2319. 2317
  2320. 2318
  2321. 2319
  2322. 2320
  2323. 2321
  2324. 2322
  2325. 2323
  2326. 2324
  2327. 2325
  2328. 2326
  2329. 2327
  2330. 2328
  2331. 2329
  2332. 2330
  2333. 2331
  2334. 2332
  2335. 2333
  2336. 2334
  2337. 2335
  2338. 2336
  2339. 2337
  2340. 2338
  2341. 2339
  2342. 2340
  2343. 2341
  2344. 2342
  2345. 2343
  2346. 2344
  2347. 2345
  2348. 2346
  2349. 2347
  2350. 2348
  2351. 2349
  2352. 2350
  2353. 2351
  2354. 2352
  2355. 2353
  2356. 2354
  2357. 2355
  2358. 2356
  2359. 2357
  2360. 2358
  2361. 2359
  2362. 2360
  2363. 2361
  2364. 2362
  2365. 2363
  2366. 2364
  2367. 2365
  2368. 2366
  2369. 2367
  2370. 2368
  2371. 2369
  2372. 2370
  2373. 2371
  2374. 2372
  2375. 2373
  2376. 2374
  2377. 2375
  2378. 2376
  2379. 2377
  2380. 2378
  2381. 2379
  2382. 2380
  2383. 2381
  2384. 2382
  2385. 2383
  2386. 2384
  2387. 2385
  2388. 2386
  2389. 2387
  2390. 2388
  2391. 2389
  2392. 2390
  2393. 2391
  2394. 2392
  2395. 2393
  2396. 2394
  2397. 2395
  2398. 2396
  2399. 2397
  2400. 2398
  2401. 2399
  2402. 2400
  2403. 2401
  2404. 2402
  2405. 2403
  2406. 2404
  2407. 2405
  2408. 2406
  2409. 2407
  2410. 2408
  2411. 2409
  2412. 2410
  2413. 2411
  2414. 2412
  2415. 2413
  2416. 2414
  2417. 2415
  2418. 2416
  2419. 2417
  2420. 2418
  2421. 2419
  2422. 2420
  2423. 2421
  2424. 2422
  2425. 2423
  2426. 2424
  2427. 2425
  2428. 2426
  2429. 2427
  2430. 2428
  2431. 2429
  2432. 2430
  2433. 2431
  2434. 2432
  2435. 2433
  2436. 2434
  2437. 2435
  2438. 2436
  2439. 2437
  2440. 2438
  2441. 2439
  2442. 2440
  2443. 2441
  2444. 2442
  2445. 2443
  2446. 2444
  2447. 2445
  2448. 2446
  2449. 2447
  2450. 2448
  2451. 2449
  2452. 2450
  2453. 2451
  2454. 2452
  2455. 2453
  2456. 2454
  2457. 2455
  2458. 2456
  2459. 2457
  2460. 2458
  2461. 2459
  2462. 2460
  2463. 2461
  2464. 2462
  2465. 2463
  2466. 2464
  2467. 2465
  2468. 2466
  2469. 2467
  2470. 2468
  2471. 2469
  2472. 2470
  2473. 2471
  2474. 2472
  2475. 2473
  2476. 2474
  2477. 2475
  2478. 2476
  2479. 2477
  2480. 2478
  2481. 2479
  2482. 2480
  2483. 2481
  2484. 2482
  2485. 2483
  2486. 2484
  2487. 2485
  2488. 2486
  2489. 2487
  2490. 2488
  2491. 2489
  2492. 2490
  2493. 2491
  2494. 2492
  2495. 2493
  2496. 2494
  2497. 2495
  2498. 2496
  2499. 2497
  2500. 2498
  2501. 2499
  2502. 2500
  2503. 2501
  2504. 2502
  2505. 2503
  2506. 2504
  2507. 2505
  2508. 2506
  2509. 2507
  2510. 2508
  2511. 2509
  2512. 2510
  2513. 2511
  2514. 2512
  2515. 2513
  2516. 2514
  2517. 2515
  2518. 2516
  2519. 2517
  2520. 2518
  2521. 2519
  2522. 2520
  2523. 2521
  2524. 2522
  2525. 2523
  2526. 2524
  2527. 2525
  2528. 2526
  2529. 2527
  2530. 2528
  2531. 2529
  2532. 2530
  2533. 2531
  2534. 2532
  2535. 2533
  2536. 2534
  2537. 2535
  2538. 2536
  2539. 2537
  2540. 2538
  2541. 2539
  2542. 2540
  2543. 2541
  2544. 2542
  2545. 2543
  2546. 2544
  2547. 2545
  2548. 2546
  2549. 2547
  2550. 2548
  2551. 2549
  2552. 2550
  2553. 2551
  2554. 2552
  2555. 2553
  2556. 2554
  2557. 2555
  2558. 2556
  2559. 2557
  2560. 2558
  2561. 2559
  2562. 2560
  2563. 2561
  2564. 2562
  2565. 2563
  2566. 2564
  2567. 2565
  2568. 2566
  2569. 2567
  2570. 2568
  2571. 2569
  2572. 2570
  2573. 2571
  2574. 2572
  2575. 2573
  2576. 2574
  2577. 2575
  2578. 2576
  2579. 2577
  2580. 2578
  2581. 2579
  2582. 2580
  2583. 2581
  2584. 2582
  2585. 2583
  2586. 2584
  2587. 2585
  2588. 2586
  2589. 2587
  2590. 2588
  2591. 2589
  2592. 2590
  2593. 2591
  2594. 2592
  2595. 2593
  2596. 2594
  2597. 2595
  2598. 2596
  2599. 2597
  2600. 2598
  2601. 2599
  2602. 2600
  2603. 2601
  2604. 2602
  2605. 2603
  2606. 2604
  2607. 2605
  2608. 2606
  2609. 2607
  2610. 2608
  2611. 2609
  2612. 2610
  2613. 2611
  2614. 2612
  2615. 2613
  2616. 2614
  2617. 2615
  2618. 2616
  2619. 2617
  2620. 2618
  2621. 2619
  2622. 2620
  2623. 2621
  2624. 2622
  2625. 2623
  2626. 2624
  2627. 2625
  2628. 2626
  2629. 2627
  2630. 2628
  2631. 2629
  2632. 2630
  2633. 2631
  2634. 2632
  2635. 2633
  2636. 2634
  2637. 2635
  2638. 2636
  2639. 2637
  2640. 2638
  2641. 2639
  2642. 2640
  2643. 2641
  2644. 2642
  2645. 2643
  2646. 2644
  2647. 2645
  2648. 2646
  2649. 2647
  2650. 2648
  2651. 2649
  2652. 2650
  2653. 2651
  2654. 2652
  2655. 2653
  2656. 2654
  2657. 2655
  2658. 2656
  2659. 2657
  2660. 2658
  2661. 2659
  2662. 2660
  2663. 2661
  2664. 2662
  2665. 2663
  2666. 2664
  2667. 2665
  2668. 2666
  2669. 2667
  2670. 2668
  2671. 2669
  2672. 2670
  2673. 2671
  2674. 2672
  2675. 2673
  2676. 2674
  2677. 2675
  2678. 2676
  2679. 2677
  2680. 2678
  2681. 2679
  2682. 2680
  2683. 2681
  2684. 2682
  2685. 2683
  2686. 2684
  2687. 2685
  2688. 2686
  2689. 2687
  2690. 2688
  2691. 2689
  2692. 2690
  2693. 2691
  2694. 2692
  2695. 2693
  2696. 2694
  2697. 2695
  2698. 2696
  2699. 2697
  2700. 2698
  2701. 2699
  2702. 2700
  2703. 2701
  2704. 2702
  2705. 2703
  2706. 2704
  2707. 2705
  2708. 2706
  2709. 2707
  2710. 2708
  2711. 2709
  2712. 2710
  2713. 2711
  2714. 2712
  2715. 2713
  2716. 2714
  2717. 2715
  2718. 2716
  2719. 2717
  2720. 2718
  2721. 2719
  2722. 2720
  2723. 2721
  2724. 2722
  2725. 2723
  2726. 2724
  2727. 2725
  2728. 2726
  2729. 2727
  2730. 2728
  2731. 2729
  2732. 2730
  2733. 2731
  2734. 2732
  2735. 2733
  2736. 2734
  2737. 2735
  2738. 2736
  2739. 2737
  2740. 2738
  2741. 2739
  2742. 2740
  2743. 2741
  2744. 2742
  2745. 2743
  2746. 2744
  2747. 2745
  2748. 2746
  2749. 2747
  2750. 2748
  2751. 2749
  2752. 2750
  2753. 2751
  2754. 2752
  2755. 2753
  2756. 2754
  2757. 2755
  2758. 2756
  2759. 2757
  2760. 2758
  2761. 2759
  2762. 2760
  2763. 2761
  2764. 2762
  2765. 2763
  2766. 2764
  2767. 2765
  2768. 2766
  2769. 2767
  2770. 2768
  2771. 2769
  2772. 2770
  2773. 2771
  2774. 2772
  2775. 2773
  2776. 2774
  2777. 2775
  2778. 2776
  2779. 2777
  2780. 2778
  2781. 2779
  2782. 2780
  2783. 2781
  2784. 2782
  2785. 2783
  2786. 2784
  2787. 2785
  2788. 2786
  2789. 2787
  2790. 2788
  2791. 2789
  2792. 2790
  2793. 2791
  2794. 2792
  2795. 2793
  2796. 2794
  2797. 2795
  2798. 2796
  2799. 2797
  2800. 2798
  2801. 2799
  2802. 2800
  2803. 2801
  2804. 2802
  2805. 2803
  2806. 2804
  2807. 2805
  2808. 2806
  2809. 2807
  2810. 2808
  2811. 2809
  2812. 2810
  2813. 2811
  2814. 2812
  2815. 2813
  2816. 2814
  2817. 2815
  2818. 2816
  2819. 2817
  2820. 2818
  2821. 2819
  2822. 2820
  2823. 2821
  2824. 2822
  2825. 2823
  2826. 2824
  2827. 2825
  2828. 2826
  2829. 2827
  2830. 2828
  2831. 2829
  2832. 2830
  2833. 2831
  2834. 2832
  2835. 2833
  2836. 2834
  2837. 2835
  2838. 2836
  2839. 2837
  2840. 2838
  2841. 2839
  2842. 2840
  2843. 2841
  2844. 2842
  2845. 2843
  2846. 2844
  2847. 2845
  2848. 2846
  2849. 2847
  2850. 2848
  2851. 2849
  2852. 2850
  2853. 2851
  2854. 2852
  2855. 2853
  2856. 2854
  2857. 2855
  2858. 2856
  2859. 2857
  2860. 2858
  2861. 2859
  2862. 2860
  2863. 2861
  2864. 2862
  2865. 2863
  2866. 2864
  2867. 2865
  2868. 2866
  2869. 2867
  2870. 2868
  2871. 2869
  2872. 2870
  2873. 2871
  2874. 2872
  2875. 2873
  2876. 2874
  2877. 2875
  2878. 2876
  2879. 2877
  2880. 2878
  2881. 2879
  2882. 2880
  2883. 2881
  2884. 2882
  2885. 2883
  2886. 2884
  2887. 2885
  2888. 2886
  2889. 2887
  2890. 2888
  2891. 2889
  2892. 2890
  2893. 2891
  2894. 2892
  2895. 2893
  2896. 2894
  2897. 2895
  2898. 2896
  2899. 2897
  2900. 2898
  2901. 2899
  2902. 2900
  2903. 2901
  2904. 2902
  2905. 2903
  2906. 2904
  2907. 2905
  2908. 2906
  2909. 2907
  2910. 2908
  2911. 2909
  2912. 2910
  2913. 2911
  2914. 2912
  2915. 2913
  2916. 2914
  2917. 2915
  2918. 2916
  2919. 2917
  2920. 2918
  2921. 2919
  2922. 2920
  2923. 2921
  2924. 2922
  2925. 2923
  2926. 2924
  2927. 2925
  2928. 2926
  2929. 2927
  2930. 2928
  2931. 2929
  2932. 2930
  2933. 2931
  2934. 2932
  2935. 2933
  2936. 2934
  2937. 2935
  2938. 2936
  2939. 2937
  2940. 2938
  2941. 2939
  2942. 2940
  2943. 2941
  2944. 2942
  2945. 2943
  2946. 2944
  2947. 2945
  2948. 2946
  2949. 2947
  2950. 2948
  2951. 2949
  2952. 2950
  2953. 2951
  2954. 2952
  2955. 2953
  2956. 2954
  2957. 2955
  2958. 2956
  2959. 2957
  2960. 2958
  2961. 2959
  2962. 2960
  2963. 2961
  2964. 2962
  2965. 2963
  2966. 2964
  2967. 2965
  2968. 2966
  2969. 2967
  2970. 2968
  2971. 2969
  2972. 2970
  2973. 2971
  2974. 2972
  2975. 2973
  2976. 2974
  2977. 2975
  2978. 2976
  2979. 2977
  2980. 2978
  2981. 2979
  2982. 2980
  2983. 2981
  2984. 2982
  2985. 2983
  2986. 2984
  2987. 2985
  2988. 2986
  2989. 2987
  2990. 2988
  2991. 2989
  2992. 2990
  2993. 2991
  2994. 2992
  2995. 2993
  2996. 2994
  2997. 2995
  2998. 2996
  2999. 2997
  3000. 2998
  3001. 2999
  3002. 3000
  3003. 3001
  3004. 3002
  3005. 3003
  3006. 3004
  3007. 3005
  3008. 3006
  3009. 3007
  3010. 3008
  3011. 3009
  3012. 3010
  3013. 3011
  3014. 3012
  3015. 3013
  3016. 3014
  3017. 3015
  3018. 3016
  3019. 3017
  3020. 3018
  3021. 3019
  3022. 3020
  3023. 3021
  3024. 3022
  3025. 3023
  3026. 3024
  3027. 3025
  3028. 3026
  3029. 3027
  3030. 3028
  3031. 3029
  3032. 3030
  3033. 3031
  3034. 3032
  3035. 3033
  3036. 3034
  3037. 3035
  3038. 3036
  3039. 3037
  3040. 3038
  3041. 3039
  3042. 3040
  3043. 3041
  3044. 3042
  3045. 3043
  3046. 3044
  3047. 3045
  3048. 3046
  3049. 3047
  3050. 3048
  3051. 3049
  3052. 3050
  3053. 3051
  3054. 3052
  3055. 3053
  3056. 3054
  3057. 3055
  3058. 3056
  3059. 3057
  3060. 3058
  3061. 3059
  3062. 3060
  3063. 3061
  3064. 3062
  3065. 3063
  3066. 3064
  3067. 3065
  3068. 3066
  3069. 3067
  3070. 3068
  3071. 3069
  3072. 3070
  3073. 3071
  3074. 3072
  3075. 3073
  3076. 3074
  3077. 3075
  3078. 3076
  3079. 3077
  3080. 3078
  3081. 3079
  3082. 3080
  3083. 3081
  3084. 3082
  3085. 3083
  3086. 3084
  3087. 3085
  3088. 3086
  3089. 3087
  3090. 3088
  3091. 3089
  3092. 3090
  3093. 3091
  3094. 3092
  3095. 3093
  3096. 3094
  3097. 3095
  3098. 3096
  3099. 3097
  3100. 3098
  3101. 3099
  3102. 3100
  3103. 3101
  3104. 3102
  3105. 3103
  3106. 3104
  3107. 3105
  3108. 3106
  3109. 3107
  3110. 3108
  3111. 3109
  3112. 3110
  3113. 3111
  3114. 3112
  3115. 3113
  3116. 3114
  3117. 3115
  3118. 3116
  3119. 3117
  3120. 3118
  3121. 3119
  3122. 3120
  3123. 3121
  3124. 3122
  3125. 3123
  3126. 3124
  3127. 3125
  3128. 3126
  3129. 3127
  3130. 3128
  3131. 3129
  3132. 3130
  3133. 3131
  3134. 3132
  3135. 3133
  3136. 3134
  3137. 3135
  3138. 3136
  3139. 3137
  3140. 3138
  3141. 3139
  3142. 3140
  3143. 3141
  3144. 3142
  3145. 3143
  3146. 3144
  3147. 3145
  3148. 3146
  3149. 3147
  3150. 3148
  3151. 3149
  3152. 3150
  3153. 3151
  3154. 3152
  3155. 3153
  3156. 3154
  3157. 3155
  3158. 3156
  3159. 3157
  3160. 3158
  3161. 3159
  3162. 3160
  3163. 3161
  3164. 3162
  3165. 3163
  3166. 3164
  3167. 3165
  3168. 3166
  3169. 3167
  3170. 3168
  3171. 3169
  3172. 3170
  3173. 3171
  3174. 3172
  3175. 3173
  3176. 3174
  3177. 3175
  3178. 3176
  3179. 3177
  3180. 3178
  3181. 3179
  3182. 3180
  3183. 3181
  3184. 3182
  3185. 3183
  3186. 3184
  3187. 3185
  3188. 3186
  3189. 3187
  3190. 3188
  3191. 3189
  3192. 3190
  3193. 3191
  3194. 3192
  3195. 3193
  3196. 3194
  3197. 3195
  3198. 3196
  3199. 3197
  3200. 3198
  3201. 3199
  3202. 3200
  3203. 3201
  3204. 3202
  3205. 3203
  3206. 3204
  3207. 3205
  3208. 3206
  3209. 3207
  3210. 3208
  3211. 3209
  3212. 3210
  3213. 3211
  3214. 3212
  3215. 3213
  3216. 3214
  3217. 3215
  3218. 3216
  3219. 3217
  3220. 3218
  3221. 3219
  3222. 3220
  3223. 3221
  3224. 3222
  3225. 3223
  3226. 3224
  3227. 3225
  3228. 3226
  3229. 3227
  3230. 3228
  3231. 3229
  3232. 3230
  3233. 3231
  3234. 3232
  3235. 3233
  3236. 3234
  3237. 3235
  3238. 3236
  3239. 3237
  3240. 3238
  3241. 3239
  3242. 3240
  3243. 3241
  3244. 3242
  3245. 3243
  3246. 3244
  3247. 3245
  3248. 3246
  3249. 3247
  3250. 3248
  3251. 3249
  3252. 3250
  3253. 3251
  3254. 3252
  3255. 3253
  3256. 3254
  3257. 3255
  3258. 3256
  3259. 3257
  3260. 3258
  3261. 3259
  3262. 3260
  3263. 3261
  3264. 3262
  3265. 3263
  3266. 3264
  3267. 3265
  3268. 3266
  3269. 3267
  3270. 3268
  3271. 3269
  3272. 3270
  3273. 3271
  3274. 3272
  3275. 3273
  3276. 3274
  3277. 3275
  3278. 3276
  3279. 3277
  3280. 3278
  3281. 3279
  3282. 3280
  3283. 3281
  3284. 3282
  3285. 3283
  3286. 3284
  3287. 3285
  3288. 3286
  3289. 3287
  3290. 3288
  3291. 3289
  3292. 3290
  3293. 3291
  3294. 3292
  3295. 3293
  3296. 3294
  3297. 3295
  3298. 3296
  3299. 3297
  3300. 3298
  3301. 3299
  3302. 3300
  3303. 3301
  3304. 3302
  3305. 3303
  3306. 3304
  3307. 3305
  3308. 3306
  3309. 3307
  3310. 3308
  3311. 3309
  3312. 3310
  3313. 3311
  3314. 3312
  3315. 3313
  3316. 3314
  3317. 3315
  3318. 3316
  3319. 3317
  3320. 3318
  3321. 3319
  3322. 3320
  3323. 3321
  3324. 3322
  3325. 3323
  3326. 3324
  3327. 3325
  3328. 3326
  3329. 3327
  3330. 3328
  3331. 3329
  3332. 3330
  3333. 3331
  3334. 3332
  3335. 3333
  3336. 3334
  3337. 3335
  3338. 3336
  3339. 3337
  3340. 3338
  3341. 3339
  3342. 3340
  3343. 3341
  3344. 3342
  3345. 3343
  3346. 3344
  3347. 3345
  3348. 3346
  3349. 3347
  3350. 3348
  3351. 3349
  3352. 3350
  3353. 3351
  3354. 3352
  3355. 3353
  3356. 3354
  3357. 3355
  3358. 3356
  3359. 3357
  3360. 3358
  3361. 3359
  3362. 3360
  3363. 3361
  3364. 3362
  3365. 3363
  3366. 3364
  3367. 3365
  3368. 3366
  3369. 3367
  3370. 3368
  3371. 3369
  3372. 3370
  3373. 3371
  3374. 3372
  3375. 3373
  3376. 3374
  3377. 3375
  3378. 3376
  3379. 3377
  3380. 3378
  3381. 3379
  3382. 3380
  3383. 3381
  3384. 3382
  3385. 3383
  3386. 3384
  3387. 3385
  3388. 3386
  3389. 3387
  3390. 3388
  3391. 3389
  3392. 3390
  3393. 3391
  3394. 3392
  3395. 3393
  3396. 3394
  3397. 3395
  3398. 3396
  3399. 3397
  3400. 3398
  3401. 3399
  3402. 3400
  3403. 3401
  3404. 3402
  3405. 3403
  3406. 3404
  3407. 3405
  3408. 3406
  3409. 3407
  3410. 3408
  3411. 3409
  3412. 3410
  3413. 3411
  3414. 3412
  3415. 3413
  3416. 3414
  3417. 3415
  3418. 3416
  3419. 3417
  3420. 3418
  3421. 3419
  3422. 3420
  3423. 3421
  3424. 3422
  3425. 3423
  3426. 3424
  3427. 3425
  3428. 3426
  3429. 3427
  3430. 3428
  3431. 3429
  3432. 3430
  3433. 3431
  3434. 3432
  3435. 3433
  3436. 3434
  3437. 3435
  3438. 3436
  3439. 3437
  3440. 3438
  3441. 3439
  3442. 3440
  3443. 3441
  3444. 3442
  3445. 3443
  3446. 3444
  3447. 3445
  3448. 3446
  3449. 3447
  3450. 3448
  3451. 3449
  3452. 3450
  3453. 3451
  3454. 3452
  3455. 3453
  3456. 3454
  3457. 3455
  3458. 3456
  3459. 3457
  3460. 3458
  3461. 3459
  3462. 3460
  3463. 3461
  3464. 3462
  3465. 3463
  3466. 3464
  3467. 3465
  3468. 3466
  3469. 3467
  3470. 3468
  3471. 3469
  3472. 3470
  3473. 3471
  3474. 3472
  3475. 3473
  3476. 3474
  3477. 3475
  3478. 3476
  3479. 3477
  3480. 3478
  3481. 3479
  3482. 3480
  3483. 3481
  3484. 3482
  3485. 3483
  3486. 3484
  3487. 3485
  3488. 3486
  3489. 3487
  3490. 3488
  3491. 3489
  3492. 3490
  3493. 3491
  3494. 3492
  3495. 3493
  3496. 3494
  3497. 3495
  3498. 3496
  3499. 3497
  3500. 3498
  3501. 3499
  3502. 3500
  3503. 3501
  3504. 3502
  3505. 3503
  3506. 3504
  3507. 3505
  3508. 3506
  3509. 3507
  3510. 3508
  3511. 3509
  3512. 3510
  3513. 3511
  3514. 3512
  3515. 3513
  3516. 3514
  3517. 3515
  3518. 3516
  3519. 3517
  3520. 3518
  3521. 3519
  3522. 3520
  3523. 3521
  3524. 3522
  3525. 3523
  3526. 3524
  3527. 3525
  3528. 3526
  3529. 3527
  3530. 3528
  3531. 3529
  3532. 3530
  3533. 3531
  3534. 3532
  3535. 3533
  3536. 3534
  3537. 3535
  3538. 3536
  3539. 3537
  3540. 3538
  3541. 3539
  3542. 3540
  3543. 3541
  3544. 3542
  3545. 3543
  3546. 3544
  3547. 3545
  3548. 3546
  3549. 3547
  3550. 3548
  3551. 3549
  3552. 3550
  3553. 3551
  3554. 3552
  3555. 3553
  3556. 3554
  3557. 3555
  3558. 3556
  3559. 3557
  3560. 3558
  3561. 3559
  3562. 3560
  3563. 3561
  3564. 3562
  3565. 3563
  3566. 3564
  3567. 3565
  3568. 3566
  3569. 3567
  3570. 3568
  3571. 3569
  3572. 3570
  3573. 3571
  3574. 3572
  3575. 3573
  3576. 3574
  3577. 3575
  3578. 3576
  3579. 3577
  3580. 3578
  3581. 3579
  3582. 3580
  3583. 3581
  3584. 3582
  3585. 3583
  3586. 3584
  3587. 3585
  3588. 3586
  3589. 3587
  3590. 3588
  3591. 3589
  3592. 3590
  3593. 3591
  3594. 3592
  3595. 3593
  3596. 3594
  3597. 3595
  3598. 3596
  3599. 3597
  3600. 3598
  3601. 3599
  3602. 3600
  3603. 3601
  3604. 3602
  3605. 3603
  3606. 3604
  3607. 3605
  3608. 3606
  3609. 3607
  3610. 3608
  3611. 3609
  3612. 3610
  3613. 3611
  3614. 3612
  3615. 3613
  3616. 3614
  3617. 3615
  3618. 3616
  3619. 3617
  3620. 3618
  3621. 3619
  3622. 3620
  3623. 3621
  3624. 3622
  3625. 3623
  3626. 3624
  3627. 3625
  3628. 3626
  3629. 3627
  3630. 3628
  3631. 3629
  3632. 3630
  3633. 3631
  3634. 3632
  3635. 3633
  3636. 3634
  3637. 3635
  3638. 3636
  3639. 3637
  3640. 3638
  3641. 3639
  3642. 3640
  3643. 3641
  3644. 3642
  3645. 3643
  3646. 3644
  3647. 3645
  3648. 3646
  3649. 3647
  3650. 3648
  3651. 3649
  3652. 3650
  3653. 3651
  3654. 3652
  3655. 3653
  3656. 3654
  3657. 3655
  3658. 3656
  3659. 3657
  3660. 3658
  3661. 3659
  3662. 3660
  3663. 3661
  3664. 3662
  3665. 3663
  3666. 3664
  3667. 3665
  3668. 3666
  3669. 3667
  3670. 3668
  3671. 3669
  3672. 3670
  3673. 3671
  3674. 3672
  3675. 3673
  3676. 3674
  3677. 3675
  3678. 3676
  3679. 3677
  3680. 3678
  3681. 3679
  3682. 3680
  3683. 3681
  3684. 3682
  3685. 3683
  3686. 3684
  3687. 3685
  3688. 3686
  3689. 3687
  3690. 3688
  3691. 3689
  3692. 3690
  3693. 3691
  3694. 3692
  3695. 3693
  3696. 3694
  3697. 3695
  3698. 3696
  3699. 3697
  3700. 3698
  3701. 3699
  3702. 3700
  3703. 3701
  3704. 3702
  3705. 3703
  3706. 3704
  3707. 3705
  3708. 3706
  3709. 3707
  3710. 3708
  3711. 3709
  3712. 3710
  3713. 3711
  3714. 3712
  3715. 3713
  3716. 3714
  3717. 3715
  3718. 3716
  3719. 3717
  3720. 3718
  3721. 3719
  3722. 3720
  3723. 3721
  3724. 3722
  3725. 3723
  3726. 3724
  3727. 3725
  3728. 3726
  3729. 3727
  3730. 3728
  3731. 3729
  3732. 3730
  3733. 3731
  3734. 3732
  3735. 3733
  3736. 3734
  3737. 3735
  3738. 3736
  3739. 3737
  3740. 3738
  3741. 3739
  3742. 3740
  3743. 3741
  3744. 3742
  3745. 3743
  3746. 3744
  3747. 3745
  3748. 3746
  3749. 3747
  3750. 3748
  3751. 3749
  3752. 3750
  3753. 3751
  3754. 3752
  3755. 3753
  3756. 3754
  3757. 3755
  3758. 3756
  3759. 3757
  3760. 3758
  3761. 3759
  3762. 3760
  3763. 3761
  3764. 3762
  3765. 3763
  3766. 3764
  3767. 3765
  3768. 3766
  3769. 3767
  3770. 3768
  3771. 3769
  3772. 3770
  3773. 3771
  3774. 3772
  3775. 3773
  3776. 3774
  3777. 3775
  3778. 3776
  3779. 3777
  3780. 3778
  3781. 3779
  3782. 3780
  3783. 3781
  3784. 3782
  3785. 3783
  3786. 3784
  3787. 3785
  3788. 3786
  3789. 3787
  3790. 3788
  3791. 3789
  3792. 3790
  3793. 3791
  3794. 3792
  3795. 3793
  3796. 3794
  3797. 3795
  3798. 3796
  3799. 3797
  3800. 3798
  3801. 3799
  3802. 3800
  3803. 3801
  3804. 3802
  3805. 3803
  3806. 3804
  3807. 3805
  3808. 3806
  3809. 3807
  3810. 3808
  3811. 3809
  3812. 3810
  3813. 3811
  3814. 3812
  3815. 3813
  3816. 3814
  3817. 3815
  3818. 3816
  3819. 3817
  3820. 3818
  3821. 3819
  3822. 3820
  3823. 3821
  3824. 3822
  3825. 3823
  3826. 3824
  3827. 3825
  3828. 3826
  3829. 3827
  3830. 3828
  3831. 3829
  3832. 3830
  3833. 3831
  3834. 3832
  3835. 3833
  3836. 3834
  3837. 3835
  3838. 3836
  3839. 3837
  3840. 3838
  3841. 3839
  3842. 3840
  3843. 3841
  3844. 3842
  3845. 3843
  3846. 3844
  3847. 3845
  3848. 3846
  3849. 3847
  3850. 3848
  3851. 3849
  3852. 3850
  3853. 3851
  3854. 3852
  3855. 3853
  3856. 3854
  3857. 3855
  3858. 3856
  3859. 3857
  3860. 3858
  3861. 3859
  3862. 3860
  3863. 3861
  3864. 3862
  3865. 3863
  3866. 3864
  3867. 3865
  3868. 3866
  3869. 3867
  3870. 3868
  3871. 3869
  3872. 3870
  3873. 3871
  3874. 3872
  3875. 3873
  3876. 3874
  3877. 3875
  3878. 3876
  3879. 3877
  3880. 3878
  3881. 3879
  3882. 3880
  3883. 3881
  3884. 3882
  3885. 3883
  3886. 3884
  3887. 3885
  3888. 3886
  3889. 3887
  3890. 3888
  3891. 3889
  3892. 3890
  3893. 3891
  3894. 3892
  3895. 3893
  3896. 3894
  3897. 3895
  3898. 3896
  3899. 3897
  3900. 3898
  3901. 3899
  3902. 3900
  3903. 3901
  3904. 3902
  3905. 3903
  3906. 3904
  3907. 3905
  3908. 3906
  3909. 3907
  3910. 3908
  3911. 3909
  3912. 3910
  3913. 3911
  3914. 3912
  3915. 3913
  3916. 3914
  3917. 3915
  3918. 3916
  3919. 3917
  3920. 3918
  3921. 3919
  3922. 3920
  3923. 3921
  3924. 3922
  3925. 3923
  3926. 3924
  3927. 3925
  3928. 3926
  3929. 3927
  3930. 3928
  3931. 3929
  3932. 3930
  3933. 3931
  3934. 3932
  3935. 3933
  3936. 3934
  3937. 3935
  3938. 3936
  3939. 3937
  3940. 3938
  3941. 3939
  3942. 3940
  3943. 3941
  3944. 3942
  3945. 3943
  3946. 3944
  3947. 3945
  3948. 3946
  3949. 3947
  3950. 3948
  3951. 3949
  3952. 3950
  3953. 3951
  3954. 3952
  3955. 3953
  3956. 3954
  3957. 3955
  3958. 3956
  3959. 3957
  3960. 3958
  3961. 3959
  3962. 3960
  3963. 3961
  3964. 3962
  3965. 3963
  3966. 3964
  3967. 3965
  3968. 3966
  3969. 3967
  3970. 3968
  3971. 3969
  3972. 3970
  3973. 3971
  3974. 3972
  3975. 3973
  3976. 3974
  3977. 3975
  3978. 3976
  3979. 3977
  3980. 3978
  3981. 3979
  3982. 3980
  3983. 3981
  3984. 3982
  3985. 3983
  3986. 3984
  3987. 3985
  3988. 3986
  3989. 3987
  3990. 3988
  3991. 3989
  3992. 3990
  3993. 3991
  3994. 3992
  3995. 3993
  3996. 3994
  3997. 3995
  3998. 3996
  3999. 3997
  4000. 3998
  4001. 3999
  4002. 4000
  4003. 4001
  4004. 4002
  4005. 4003
  4006. 4004
  4007. 4005
  4008. 4006
  4009. 4007
  4010. 4008
  4011. 4009
  4012. 4010
  4013. 4011
  4014. 4012
  4015. 4013
  4016. 4014
  4017. 4015
  4018. 4016
  4019. 4017
  4020. 4018
  4021. 4019
  4022. 4020
  4023. 4021
  4024. 4022
  4025. 4023
  4026. 4024
  4027. 4025
  4028. 4026
  4029. 4027
  4030. 4028
  4031. 4029
  4032. 4030
  4033. 4031
  4034. 4032
  4035. 4033
  4036. 4034
  4037. 4035
  4038. 4036
  4039. 4037
  4040. 4038
  4041. 4039
  4042. 4040
  4043. 4041
  4044. 4042
  4045. 4043
  4046. 4044
  4047. 4045
  4048. 4046
  4049. 4047
  4050. 4048
  4051. 4049
  4052. 4050
  4053. 4051
  4054. 4052
  4055. 4053
  4056. 4054
  4057. 4055
  4058. 4056
  4059. 4057
  4060. 4058
  4061. 4059
  4062. 4060
  4063. 4061
  4064. 4062
  4065. 4063
  4066. 4064
  4067. 4065
  4068. 4066
  4069. 4067
  4070. 4068
  4071. 4069
  4072. 4070
  4073. 4071
  4074. 4072
  4075. 4073
  4076. 4074
  4077. 4075
  4078. 4076
  4079. 4077
  4080. 4078
  4081. 4079
  4082. 4080
  4083. 4081
  4084. 4082
  4085. 4083
  4086. 4084
  4087. 4085
  4088. 4086
  4089. 4087
  4090. 4088
  4091. 4089
  4092. 4090
  4093. 4091
  4094. 4092
  4095. 4093
  4096. 4094
  4097. 4095
  4098. 4096
  4099. 4097
  4100. 4098
  4101. 4099
  4102. 4100
  4103. 4101
  4104. 4102
  4105. 4103
  4106. 4104
  4107. 4105
  4108. 4106
  4109. 4107
  4110. 4108
  4111. 4109
  4112. 4110
  4113. 4111
  4114. 4112
  4115. 4113
  4116. 4114
  4117. 4115
  4118. 4116
  4119. 4117
  4120. 4118
  4121. 4119
  4122. 4120
  4123. 4121
  4124. 4122
  4125. 4123
  4126. 4124
  4127. 4125
  4128. 4126
  4129. 4127
  4130. 4128
  4131. 4129
  4132. 4130
  4133. 4131
  4134. 4132
  4135. 4133
  4136. 4134
  4137. 4135
  4138. 4136
  4139. 4137
  4140. 4138
  4141. 4139
  4142. 4140
  4143. 4141
  4144. 4142
  4145. 4143
  4146. 4144
  4147. 4145
  4148. 4146
  4149. 4147
  4150. 4148
  4151. 4149
  4152. 4150
  4153. 4151
  4154. 4152
  4155. 4153
  4156. 4154
  4157. 4155
  4158. 4156
  4159. 4157
  4160. 4158
  4161. 4159
  4162. 4160
  4163. 4161
  4164. 4162
  4165. 4163
  4166. 4164
  4167. 4165
  4168. 4166
  4169. 4167
  4170. 4168
  4171. 4169
  4172. 4170
  4173. 4171
  4174. 4172
  4175. 4173
  4176. 4174
  4177. 4175
  4178. 4176
  4179. 4177
  4180. 4178
  4181. 4179
  4182. 4180
  4183. 4181
  4184. 4182
  4185. 4183
  4186. 4184
  4187. 4185
  4188. 4186
  4189. 4187
  4190. 4188
  4191. 4189
  4192. 4190
  4193. 4191
  4194. 4192
  4195. 4193
  4196. 4194
  4197. 4195
  4198. 4196
  4199. 4197
  4200. 4198
  4201. 4199
  4202. 4200
  4203. 4201
  4204. 4202
  4205. 4203
  4206. 4204
  4207. 4205
  4208. 4206
  4209. 4207
  4210. 4208
  4211. 4209
  4212. 4210
  4213. 4211
  4214. 4212
  4215. 4213
  4216. 4214
  4217. 4215
  4218. 4216
  4219. 4217
  4220. 4218
  4221. 4219
  4222. 4220
  4223. 4221
  4224. 4222
  4225. 4223
  4226. 4224
  4227. 4225
  4228. 4226
  4229. 4227
  4230. 4228
  4231. 4229
  4232. 4230
  4233. 4231
  4234. 4232
  4235. 4233
  4236. 4234
  4237. 4235
  4238. 4236
  4239. 4237
  4240. 4238
  4241. 4239
  4242. 4240
  4243. 4241
  4244. 4242
  4245. 4243
  4246. 4244
  4247. 4245
  4248. 4246
  4249. 4247
  4250. 4248
  4251. 4249
  4252. 4250
  4253. 4251
  4254. 4252
  4255. 4253
  4256. 4254
  4257. 4255
  4258. 4256
  4259. 4257
  4260. 4258
  4261. 4259
  4262. 4260
  4263. 4261
  4264. 4262
  4265. 4263
  4266. 4264
  4267. 4265
  4268. 4266
  4269. 4267
  4270. 4268
  4271. 4269
  4272. 4270
  4273. 4271
  4274. 4272
  4275. 4273
  4276. 4274
  4277. 4275
  4278. 4276
  4279. 4277
  4280. 4278
  4281. 4279
  4282. 4280
  4283. 4281
  4284. 4282
  4285. 4283
  4286. 4284
  4287. 4285
  4288. 4286
  4289. 4287
  4290. 4288
  4291. 4289
  4292. 4290
  4293. 4291
  4294. 4292
  4295. 4293
  4296. 4294
  4297. 4295
  4298. 4296
  4299. 4297
  4300. 4298
  4301. 4299
  4302. 4300
  4303. 4301
  4304. 4302
  4305. 4303
  4306. 4304
  4307. 4305
  4308. 4306
  4309. 4307
  4310. 4308
  4311. 4309
  4312. 4310
  4313. 4311
  4314. 4312
  4315. 4313
  4316. 4314
  4317. 4315
  4318. 4316
  4319. 4317
  4320. 4318
  4321. 4319
  4322. 4320
  4323. 4321
  4324. 4322
  4325. 4323
  4326. 4324
  4327. 4325
  4328. 4326
  4329. 4327
  4330. 4328
  4331. 4329
  4332. 4330
  4333. 4331
  4334. 4332
  4335. 4333
  4336. 4334
  4337. 4335
  4338. 4336
  4339. 4337
  4340. 4338
  4341. 4339
  4342. 4340
  4343. 4341
  4344. 4342
  4345. 4343
  4346. 4344
  4347. 4345
  4348. 4346
  4349. 4347
  4350. 4348
  4351. 4349
  4352. 4350
  4353. 4351
  4354. 4352
  4355. 4353
  4356. 4354
  4357. 4355
  4358. 4356
  4359. 4357
  4360. 4358
  4361. 4359
  4362. 4360
  4363. 4361
  4364. 4362
  4365. 4363
  4366. 4364
  4367. 4365
  4368. 4366
  4369. 4367
  4370. 4368
  4371. 4369
  4372. 4370
  4373. 4371
  4374. 4372
  4375. 4373
  4376. 4374
  4377. 4375
  4378. 4376
  4379. 4377
  4380. 4378
  4381. 4379
  4382. 4380
  4383. 4381
  4384. 4382
  4385. 4383
  4386. 4384
  4387. 4385
  4388. 4386
  4389. 4387
  4390. 4388
  4391. 4389
  4392. 4390
  4393. 4391
  4394. 4392
  4395. 4393
  4396. 4394
  4397. 4395
  4398. 4396
  4399. 4397
  4400. 4398
  4401. 4399
  4402. 4400
  4403. 4401
  4404. 4402
  4405. 4403
  4406. 4404
  4407. 4405
  4408. 4406
  4409. 4407
  4410. 4408
  4411. 4409
  4412. 4410
  4413. 4411
  4414. 4412
  4415. 4413
  4416. 4414
  4417. 4415
  4418. 4416
  4419. 4417
  4420. 4418
  4421. 4419
  4422. 4420
  4423. 4421
  4424. 4422
  4425. 4423
  4426. 4424
  4427. 4425
  4428. 4426
  4429. 4427
  4430. 4428
  4431. 4429
  4432. 4430
  4433. 4431
  4434. 4432
  4435. 4433
  4436. 4434
  4437. 4435
  4438. 4436
  4439. 4437
  4440. 4438
  4441. 4439
  4442. 4440
  4443. 4441
  4444. 4442
  4445. 4443
  4446. 4444
  4447. 4445
  4448. 4446
  4449. 4447
  4450. 4448
  4451. 4449
  4452. 4450
  4453. 4451
  4454. 4452
  4455. 4453
  4456. 4454
  4457. 4455
  4458. 4456
  4459. 4457
  4460. 4458
  4461. 4459
  4462. 4460
  4463. 4461
  4464. 4462
  4465. 4463
  4466. 4464
  4467. 4465
  4468. 4466
  4469. 4467
  4470. 4468
  4471. 4469
  4472. 4470
  4473. 4471
  4474. 4472
  4475. 4473
  4476. 4474
  4477. 4475
  4478. 4476
  4479. 4477
  4480. 4478
  4481. 4479
  4482. 4480
  4483. 4481
  4484. 4482
  4485. 4483
  4486. 4484
  4487. 4485
  4488. 4486
  4489. 4487
  4490. 4488
  4491. 4489
  4492. 4490
  4493. 4491
  4494. 4492
  4495. 4493
  4496. 4494
  4497. 4495
  4498. 4496
  4499. 4497
  4500. 4498
  4501. 4499
  4502. 4500
  4503. 4501
  4504. 4502
  4505. 4503
  4506. 4504
  4507. 4505
  4508. 4506
  4509. 4507
  4510. 4508
  4511. 4509
  4512. 4510
  4513. 4511
  4514. 4512
  4515. 4513
  4516. 4514
  4517. 4515
  4518. 4516
  4519. 4517
  4520. 4518
  4521. 4519
  4522. 4520
  4523. 4521
  4524. 4522
  4525. 4523
  4526. 4524
  4527. 4525
  4528. 4526
  4529. 4527
  4530. 4528
  4531. 4529
  4532. 4530
  4533. 4531
  4534. 4532
  4535. 4533
  4536. 4534
  4537. 4535
  4538. 4536
  4539. 4537
  4540. 4538
  4541. 4539
  4542. 4540
  4543. 4541
  4544. 4542
  4545. 4543
  4546. 4544
  4547. 4545
  4548. 4546
  4549. 4547
  4550. 4548
  4551. 4549
  4552. 4550
  4553. 4551
  4554. 4552
  4555. 4553
  4556. 4554
  4557. 4555
  4558. 4556
  4559. 4557
  4560. 4558
  4561. 4559
  4562. 4560
  4563. 4561
  4564. 4562
  4565. 4563
  4566. 4564
  4567. 4565
  4568. 4566
  4569. 4567
  4570. 4568
  4571. 4569
  4572. 4570
  4573. 4571
  4574. 4572
  4575. 4573
  4576. 4574
  4577. 4575
  4578. 4576
  4579. 4577
  4580. 4578
  4581. 4579
  4582. 4580
  4583. 4581
  4584. 4582
  4585. 4583
  4586. 4584
  4587. 4585
  4588. 4586
  4589. 4587
  4590. 4588
  4591. 4589
  4592. 4590
  4593. 4591
  4594. 4592
  4595. 4593
  4596. 4594
  4597. 4595
  4598. 4596
  4599. 4597
  4600. 4598
  4601. 4599
  4602. 4600
  4603. 4601
  4604. 4602
  4605. 4603
  4606. 4604
  4607. 4605
  4608. 4606
  4609. 4607
  4610. 4608
  4611. 4609
  4612. 4610
  4613. 4611
  4614. 4612
  4615. 4613
  4616. 4614
  4617. 4615
  4618. 4616
  4619. 4617
  4620. 4618
  4621. 4619
  4622. 4620
  4623. 4621
  4624. 4622
  4625. 4623
  4626. 4624
  4627. 4625
  4628. 4626
  4629. 4627
  4630. 4628
  4631. 4629
  4632. 4630
  4633. 4631
  4634. 4632
  4635. 4633
  4636. 4634
  4637. 4635
  4638. 4636
  4639. 4637
  4640. 4638
  4641. 4639
  4642. 4640
  4643. 4641
  4644. 4642
  4645. 4643
  4646. 4644
  4647. 4645
  4648. 4646
  4649. 4647
  4650. 4648
  4651. 4649
  4652. 4650
  4653. 4651
  4654. 4652
  4655. 4653
  4656. 4654
  4657. 4655
  4658. 4656
  4659. 4657
  4660. 4658
  4661. 4659
  4662. 4660
  4663. 4661
  4664. 4662
  4665. 4663
  4666. 4664
  4667. 4665
  4668. 4666
  4669. 4667
  4670. 4668
  4671. 4669
  4672. 4670
  4673. 4671
  4674. 4672
  4675. 4673
  4676. 4674
  4677. 4675
  4678. 4676
  4679. 4677
  4680. 4678
  4681. 4679
  4682. 4680
  4683. 4681
  4684. 4682
  4685. 4683
  4686. 4684
  4687. 4685
  4688. 4686
  4689. 4687
  4690. 4688
  4691. 4689
  4692. 4690
  4693. 4691
  4694. 4692
  4695. 4693
  4696. 4694
  4697. 4695
  4698. 4696
  4699. 4697
  4700. 4698
  4701. 4699
  4702. 4700
  4703. 4701
  4704. 4702
  4705. 4703
  4706. 4704
  4707. 4705
  4708. 4706
  4709. 4707
  4710. 4708
  4711. 4709
  4712. 4710
  4713. 4711
  4714. 4712
  4715. 4713
  4716. 4714
  4717. 4715
  4718. 4716
  4719. 4717
  4720. 4718
  4721. 4719
  4722. 4720
  4723. 4721
  4724. 4722
  4725. 4723
  4726. 4724
  4727. 4725
  4728. 4726
  4729. 4727
  4730. 4728
  4731. 4729
  4732. 4730
  4733. 4731
  4734. 4732
  4735. 4733
  4736. 4734
  4737. 4735
  4738. 4736
  4739. 4737
  4740. 4738
  4741. 4739
  4742. 4740
  4743. 4741
  4744. 4742
  4745. 4743
  4746. 4744
  4747. 4745
  4748. 4746
  4749. 4747
  4750. 4748
  4751. 4749
  4752. 4750
  4753. 4751
  4754. 4752
  4755. 4753
  4756. 4754
  4757. 4755
  4758. 4756
  4759. 4757
  4760. 4758
  4761. 4759
  4762. 4760
  4763. 4761
  4764. 4762
  4765. 4763
  4766. 4764
  4767. 4765
  4768. 4766
  4769. 4767
  4770. 4768
  4771. 4769
  4772. 4770
  4773. 4771
  4774. 4772
  4775. 4773
  4776. 4774
  4777. 4775
  4778. 4776
  4779. 4777
  4780. 4778
  4781. 4779
  4782. 4780
  4783. 4781
  4784. 4782
  4785. 4783
  4786. 4784
  4787. 4785
  4788. 4786
  4789. 4787
  4790. 4788
  4791. 4789
  4792. 4790
  4793. 4791
  4794. 4792
  4795. 4793
  4796. 4794
  4797. 4795
  4798. 4796
  4799. 4797
  4800. 4798
  4801. 4799
  4802. 4800
  4803. 4801
  4804. 4802
  4805. 4803
  4806. 4804
  4807. 4805
  4808. 4806
  4809. 4807
  4810. 4808
  4811. 4809
  4812. 4810
  4813. 4811
  4814. 4812
  4815. 4813
  4816. 4814
  4817. 4815
  4818. 4816
  4819. 4817
  4820. 4818
  4821. 4819
  4822. 4820
  4823. 4821
  4824. 4822
  4825. 4823
  4826. 4824
  4827. 4825
  4828. 4826
  4829. 4827
  4830. 4828
  4831. 4829
  4832. 4830
  4833. 4831
  4834. 4832
  4835. 4833
  4836. 4834
  4837. 4835
  4838. 4836
  4839. 4837
  4840. 4838
  4841. 4839
  4842. 4840
  4843. 4841
  4844. 4842
  4845. 4843
  4846. 4844
  4847. 4845
  4848. 4846
  4849. 4847
  4850. 4848
  4851. 4849
  4852. 4850
  4853. 4851
  4854. 4852
  4855. 4853
  4856. 4854
  4857. 4855
  4858. 4856
  4859. 4857
  4860. 4858
  4861. 4859
  4862. 4860
  4863. 4861
  4864. 4862
  4865. 4863
  4866. 4864
  4867. 4865
  4868. 4866
  4869. 4867
  4870. 4868
  4871. 4869
  4872. 4870
  4873. 4871
  4874. 4872
  4875. 4873
  4876. 4874
  4877. 4875
  4878. 4876
  4879. 4877
  4880. 4878
  4881. 4879
  4882. 4880
  4883. 4881
  4884. 4882
  4885. 4883
  4886. 4884
  4887. 4885
  4888. 4886
  4889. 4887
  4890. 4888
  4891. 4889
  4892. 4890
  4893. 4891
  4894. 4892
  4895. 4893
  4896. 4894
  4897. 4895
  4898. 4896
  4899. 4897
  4900. 4898
  4901. 4899
  4902. 4900
  4903. 4901
  4904. 4902
  4905. 4903
  4906. 4904
  4907. 4905
  4908. 4906
  4909. 4907
  4910. 4908
  4911. 4909
  4912. 4910
  4913. 4911
  4914. 4912
  4915. 4913
  4916. 4914
  4917. 4915
  4918. 4916
  4919. 4917
  4920. 4918
  4921. 4919
  4922. 4920
  4923. 4921
  4924. 4922
  4925. 4923
  4926. 4924
  4927. 4925
  4928. 4926
  4929. 4927
  4930. 4928
  4931. 4929
  4932. 4930
  4933. 4931
  4934. 4932
  4935. 4933
  4936. 4934
  4937. 4935
  4938. 4936
  4939. 4937
  4940. 4938
  4941. 4939
  4942. 4940
  4943. 4941
  4944. 4942
  4945. 4943
  4946. 4944
  4947. 4945
  4948. 4946
  4949. 4947
  4950. 4948
  4951. 4949
  4952. 4950
  4953. 4951
  4954. 4952
  4955. 4953
  4956. 4954
  4957. 4955
  4958. 4956
  4959. 4957
  4960. 4958
  4961. 4959
  4962. 4960
  4963. 4961
  4964. 4962
  4965. 4963
  4966. 4964
  4967. 4965
  4968. 4966
  4969. 4967
  4970. 4968
  4971. 4969
  4972. 4970
  4973. 4971
  4974. 4972
  4975. 4973
  4976. 4974
  4977. 4975
  4978. 4976
  4979. 4977
  4980. 4978
  4981. 4979
  4982. 4980
  4983. 4981
  4984. 4982
  4985. 4983
  4986. 4984
  4987. 4985
  4988. 4986
  4989. 4987
  4990. 4988
  4991. 4989
  4992. 4990
  4993. 4991
  4994. 4992
  4995. 4993
  4996. 4994
  4997. 4995
  4998. 4996
  4999. 4997
  5000. 4998
  5001. 4999
  5002. 5000
  5003. 5001
  5004. 5002
  5005. 5003
  5006. 5004
  5007. 5005
  5008. 5006
  5009. 5007
  5010. 5008
  5011. 5009
  5012. 5010
  5013. 5011
  5014. 5012
  5015. 5013
  5016. 5014
  5017. 5015
  5018. 5016
  5019. 5017
  5020. 5018
  5021. 5019
  5022. 5020
  5023. 5021
  5024. 5022
  5025. 5023
  5026. 5024
  5027. 5025
  5028. 5026
  5029. 5027
  5030. 5028
  5031. 5029
  5032. 5030
  5033. 5031
  5034. 5032
  5035. 5033
  5036. 5034
  5037. 5035
  5038. 5036
  5039. 5037
  5040. 5038
  5041. 5039
  5042. 5040
  5043. 5041
  5044. 5042
  5045. 5043
  5046. 5044
  5047. 5045
  5048. 5046
  5049. 5047
  5050. 5048
  5051. 5049
  5052. 5050
  5053. 5051
  5054. 5052
  5055. 5053
  5056. 5054
  5057. 5055
  5058. 5056
  5059. 5057
  5060. 5058
  5061. 5059
  5062. 5060
  5063. 5061
  5064. 5062
  5065. 5063
  5066. 5064
  5067. 5065
  5068. 5066
  5069. 5067
  5070. 5068
  5071. 5069
  5072. 5070
  5073. 5071
  5074. 5072
  5075. 5073
  5076. 5074
  5077. 5075
  5078. 5076
  5079. 5077
  5080. 5078
  5081. 5079
  5082. 5080
  5083. 5081
  5084. 5082
  5085. 5083
  5086. 5084
  5087. 5085
  5088. 5086
  5089. 5087
  5090. 5088
  5091. 5089
  5092. 5090
  5093. 5091
  5094. 5092
  5095. 5093
  5096. 5094
  5097. 5095
  5098. 5096
  5099. 5097
  5100. 5098
  5101. 5099
  5102. 5100
  5103. 5101
  5104. 5102
  5105. 5103
  5106. 5104
  5107. 5105
  5108. 5106
  5109. 5107
  5110. 5108
  5111. 5109
  5112. 5110
  5113. 5111
  5114. 5112
  5115. 5113
  5116. 5114
  5117. 5115
  5118. 5116
  5119. 5117
  5120. 5118
  5121. 5119
  5122. 5120
  5123. 5121
  5124. 5122
  5125. 5123
  5126. 5124
  5127. 5125
  5128. 5126
  5129. 5127
  5130. 5128
  5131. 5129
  5132. 5130
  5133. 5131
  5134. 5132
  5135. 5133
  5136. 5134
  5137. 5135
  5138. 5136
  5139. 5137
  5140. 5138
  5141. 5139
  5142. 5140
  5143. 5141
  5144. 5142
  5145. 5143
  5146. 5144
  5147. 5145
  5148. 5146
  5149. 5147
  5150. 5148
  5151. 5149
  5152. 5150
  5153. 5151
  5154. 5152
  5155. 5153
  5156. 5154
  5157. 5155
  5158. 5156
  5159. 5157
  5160. 5158
  5161. 5159
  5162. 5160
  5163. 5161
  5164. 5162
  5165. 5163
  5166. 5164
  5167. 5165
  5168. 5166
  5169. 5167
  5170. 5168
  5171. 5169
  5172. 5170
  5173. 5171
  5174. 5172
  5175. 5173
  5176. 5174
  5177. 5175
  5178. 5176
  5179. 5177
  5180. 5178
  5181. 5179
  5182. 5180
  5183. 5181
  5184. 5182
  5185. 5183
  5186. 5184
  5187. 5185
  5188. 5186
  5189. 5187
  5190. 5188
  5191. 5189
  5192. 5190
  5193. 5191
  5194. 5192
  5195. 5193
  5196. 5194
  5197. 5195
  5198. 5196
  5199. 5197
  5200. 5198
  5201. 5199
  5202. 5200
  5203. 5201
  5204. 5202
  5205. 5203
  5206. 5204
  5207. 5205
  5208. 5206
  5209. 5207
  5210. 5208
  5211. 5209
  5212. 5210
  5213. 5211
  5214. 5212
  5215. 5213
  5216. 5214
  5217. 5215
  5218. 5216
  5219. 5217
  5220. 5218
  5221. 5219
  5222. 5220
  5223. 5221
  5224. 5222
  5225. 5223
  5226. 5224
  5227. 5225
  5228. 5226
  5229. 5227
  5230. 5228
  5231. 5229
  5232. 5230
  5233. 5231
  5234. 5232
  5235. 5233
  5236. 5234
  5237. 5235
  5238. 5236
  5239. 5237
  5240. 5238
  5241. 5239
  5242. 5240
  5243. 5241
  5244. 5242
  5245. 5243
  5246. 5244
  5247. 5245
  5248. 5246
  5249. 5247
  5250. 5248
  5251. 5249
  5252. 5250
  5253. 5251
  5254. 5252
  5255. 5253
  5256. 5254
  5257. 5255
  5258. 5256
  5259. 5257
  5260. 5258
  5261. 5259
  5262. 5260
  5263. 5261
  5264. 5262
  5265. 5263
  5266. 5264
  5267. 5265
  5268. 5266
  5269. 5267
  5270. 5268
  5271. 5269
  5272. 5270
  5273. 5271
  5274. 5272
  5275. 5273
  5276. 5274
  5277. 5275
  5278. 5276
  5279. 5277
  5280. 5278
  5281. 5279
  5282. 5280
  5283. 5281
  5284. 5282
  5285. 5283
  5286. 5284
  5287. 5285
  5288. 5286
  5289. 5287
  5290. 5288
  5291. 5289
  5292. 5290
  5293. 5291
  5294. 5292
  5295. 5293
  5296. 5294
  5297. 5295
  5298. 5296
  5299. 5297
  5300. 5298
  5301. 5299
  5302. 5300
  5303. 5301
  5304. 5302
  5305. 5303
  5306. 5304
  5307. 5305
  5308. 5306
  5309. 5307
  5310. 5308
  5311. 5309
  5312. 5310
  5313. 5311
  5314. 5312
  5315. 5313
  5316. 5314
  5317. 5315
  5318. 5316
  5319. 5317
  5320. 5318
  5321. 5319
  5322. 5320
  5323. 5321
  5324. 5322
  5325. 5323
  5326. 5324
  5327. 5325
  5328. 5326
  5329. 5327
  5330. 5328
  5331. 5329
  5332. 5330
  5333. 5331
  5334. 5332
  5335. 5333
  5336. 5334
  5337. 5335
  5338. 5336
  5339. 5337
  5340. 5338
  5341. 5339
  5342. 5340
  5343. 5341
  5344. 5342
  5345. 5343
  5346. 5344
  5347. 5345
  5348. 5346
  5349. 5347
  5350. 5348
  5351. 5349
  5352. 5350
  5353. 5351
  5354. 5352
  5355. 5353
  5356. 5354
  5357. 5355
  5358. 5356
  5359. 5357
  5360. 5358
  5361. 5359
  5362. 5360
  5363. 5361
  5364. 5362
  5365. 5363
  5366. 5364
  5367. 5365
  5368. 5366
  5369. 5367
  5370. 5368
  5371. 5369
  5372. 5370
  5373. 5371
  5374. 5372
  5375. 5373
  5376. 5374
  5377. 5375
  5378. 5376
  5379. 5377
  5380. 5378
  5381. 5379
  5382. 5380
  5383. 5381
  5384. 5382
  5385. 5383
  5386. 5384
  5387. 5385
  5388. 5386
  5389. 5387
  5390. 5388
  5391. 5389
  5392. 5390
  5393. 5391
  5394. 5392
  5395. 5393
  5396. 5394
  5397. 5395
  5398. 5396
  5399. 5397
  5400. 5398
  5401. 5399
  5402. 5400
  5403. 5401
  5404. 5402
  5405. 5403
  5406. 5404
  5407. 5405
  5408. 5406
  5409. 5407
  5410. 5408
  5411. 5409
  5412. 5410
  5413. 5411
  5414. 5412
  5415. 5413
  5416. 5414
  5417. 5415
  5418. 5416
  5419. 5417
  5420. 5418
  5421. 5419
  5422. 5420
  5423. 5421
  5424. 5422
  5425. 5423
  5426. 5424
  5427. 5425
  5428. 5426
  5429. 5427
  5430. 5428
  5431. 5429
  5432. 5430
  5433. 5431
  5434. 5432
  5435. 5433
  5436. 5434
  5437. 5435
  5438. 5436
  5439. 5437
  5440. 5438
  5441. 5439
  5442. 5440
  5443. 5441
  5444. 5442
  5445. 5443
  5446. 5444
  5447. 5445
  5448. 5446
  5449. 5447
  5450. 5448
  5451. 5449
  5452. 5450
  5453. 5451
  5454. 5452
  5455. 5453
  5456. 5454
  5457. 5455
  5458. 5456
  5459. 5457
  5460. 5458
  5461. 5459
  5462. 5460
  5463. 5461
  5464. 5462
  5465. 5463
  5466. 5464
  5467. 5465
  5468. 5466
  5469. 5467
  5470. 5468
  5471. 5469
  5472. 5470
  5473. 5471
  5474. 5472
  5475. 5473
  5476. 5474
  5477. 5475
  5478. 5476
  5479. 5477
  5480. 5478
  5481. 5479
  5482. 5480
  5483. 5481
  5484. 5482
  5485. 5483
  5486. 5484
  5487. 5485
  5488. 5486
  5489. 5487
  5490. 5488
  5491. 5489
  5492. 5490
  5493. 5491
  5494. 5492
  5495. 5493
  5496. 5494
  5497. 5495
  5498. 5496
  5499. 5497
  5500. 5498
  5501. 5499
  5502. 5500
  5503. 5501
  5504. 5502
  5505. 5503
  5506. 5504
  5507. 5505
  5508. 5506
  5509. 5507
  5510. 5508
  5511. 5509
  5512. 5510
  5513. 5511
  5514. 5512
  5515. 5513
  5516. 5514
  5517. 5515
  5518. 5516
  5519. 5517
  5520. 5518
  5521. 5519
  5522. 5520
  5523. 5521
  5524. 5522
  5525. 5523
  5526. 5524
  5527. 5525
  5528. 5526
  5529. 5527
  5530. 5528
  5531. 5529
  5532. 5530
  5533. 5531
  5534. 5532
  5535. 5533
  5536. 5534
  5537. 5535
  5538. 5536
  5539. 5537
  5540. 5538
  5541. 5539
  5542. 5540
  5543. 5541
  5544. 5542
  5545. 5543
  5546. 5544
  5547. 5545
  5548. 5546
  5549. 5547
  5550. 5548
  5551. 5549
  5552. 5550
  5553. 5551
  5554. 5552
  5555. 5553
  5556. 5554
  5557. 5555
  5558. 5556
  5559. 5557
  5560. 5558
  5561. 5559
  5562. 5560
  5563. 5561
  5564. 5562
  5565. 5563
  5566. 5564
  5567. 5565
  5568. 5566
  5569. 5567
  5570. 5568
  5571. 5569
  5572. 5570
  5573. 5571
  5574. 5572
  5575. 5573
  5576. 5574
  5577. 5575
  5578. 5576
  5579. 5577
  5580. 5578
  5581. 5579
  5582. 5580
  5583. 5581
  5584. 5582
  5585. 5583
  5586. 5584
  5587. 5585
  5588. 5586
  5589. 5587
  5590. 5588
  5591. 5589
  5592. 5590
  5593. 5591
  5594. 5592
  5595. 5593
  5596. 5594
  5597. 5595
  5598. 5596
  5599. 5597
  5600. 5598
  5601. 5599
  5602. 5600
  5603. 5601
  5604. 5602
  5605. 5603
  5606. 5604
  5607. 5605
  5608. 5606
  5609. 5607
  5610. 5608
  5611. 5609
  5612. 5610
  5613. 5611
  5614. 5612
  5615. 5613
  5616. 5614
  5617. 5615
  5618. 5616
  5619. 5617
  5620. 5618
  5621. 5619
  5622. 5620
  5623. 5621
  5624. 5622
  5625. 5623
  5626. 5624
  5627. 5625
  5628. 5626
  5629. 5627
  5630. 5628
  5631. 5629
  5632. 5630
  5633. 5631
  5634. 5632
  5635. 5633
  5636. 5634
  5637. 5635
  5638. 5636
  5639. 5637
  5640. 5638
  5641. 5639
  5642. 5640
  5643. 5641
  5644. 5642
  5645. 5643
  5646. 5644
  5647. 5645
  5648. 5646
  5649. 5647
  5650. 5648
  5651. 5649
  5652. 5650
  5653. 5651
  5654. 5652
  5655. 5653
  5656. 5654
  5657. 5655
  5658. 5656
  5659. 5657
  5660. 5658
  5661. 5659
  5662. 5660
  5663. 5661
  5664. 5662
  5665. 5663
  5666. 5664
  5667. 5665
  5668. 5666
  5669. 5667
  5670. 5668
  5671. 5669
  5672. 5670
  5673. 5671
  5674. 5672
  5675. 5673
  5676. 5674
  5677. 5675
  5678. 5676
  5679. 5677
  5680. 5678
  5681. 5679
  5682. 5680
  5683. 5681
  5684. 5682
  5685. 5683
  5686. 5684
  5687. 5685
  5688. 5686
  5689. 5687
  5690. 5688
  5691. 5689
  5692. 5690
  5693. 5691
  5694. 5692
  5695. 5693
  5696. 5694
  5697. 5695
  5698. 5696
  5699. 5697
  5700. 5698
  5701. 5699
  5702. 5700
  5703. 5701
  5704. 5702
  5705. 5703
  5706. 5704
  5707. 5705
  5708. 5706
  5709. 5707
  5710. 5708
  5711. 5709
  5712. 5710
  5713. 5711
  5714. 5712
  5715. 5713
  5716. 5714
  5717. 5715
  5718. 5716
  5719. 5717
  5720. 5718
  5721. 5719
  5722. 5720
  5723. 5721
  5724. 5722
  5725. 5723
  5726. 5724
  5727. 5725
  5728. 5726
  5729. 5727
  5730. 5728
  5731. 5729
  5732. 5730
  5733. 5731
  5734. 5732
  5735. 5733
  5736. 5734
  5737. 5735
  5738. 5736
  5739. 5737
  5740. 5738
  5741. 5739
  5742. 5740
  5743. 5741
  5744. 5742
  5745. 5743
  5746. 5744
  5747. 5745
  5748. 5746
  5749. 5747
  5750. 5748
  5751. 5749
  5752. 5750
  5753. 5751
  5754. 5752
  5755. 5753
  5756. 5754
  5757. 5755
  5758. 5756
  5759. 5757
  5760. 5758
  5761. 5759
  5762. 5760
  5763. 5761
  5764. 5762
  5765. 5763
  5766. 5764
  5767. 5765
  5768. 5766
  5769. 5767
  5770. 5768
  5771. 5769
  5772. 5770
  5773. 5771
  5774. 5772
  5775. 5773
  5776. 5774
  5777. 5775
  5778. 5776
  5779. 5777
  5780. 5778
  5781. 5779
  5782. 5780
  5783. 5781
  5784. 5782
  5785. 5783
  5786. 5784
  5787. 5785
  5788. 5786
  5789. 5787
  5790. 5788
  5791. 5789
  5792. 5790
  5793. 5791
  5794. 5792
  5795. 5793
  5796. 5794
  5797. 5795
  5798. 5796
  5799. 5797
  5800. 5798
  5801. 5799
  5802. 5800
  5803. 5801
  5804. 5802
  5805. 5803
  5806. 5804
  5807. 5805
  5808. 5806
  5809. 5807
  5810. 5808
  5811. 5809
  5812. 5810
  5813. 5811
  5814. 5812
  5815. 5813
  5816. 5814
  5817. 5815
  5818. 5816
  5819. 5817
  5820. 5818
  5821. 5819
  5822. 5820
  5823. 5821
  5824. 5822
  5825. 5823
  5826. 5824
  5827. 5825
  5828. 5826
  5829. 5827
  5830. 5828
  5831. 5829
  5832. 5830
  5833. 5831
  5834. 5832
  5835. 5833
  5836. 5834
  5837. 5835
  5838. 5836
  5839. 5837
  5840. 5838
  5841. 5839
  5842. 5840
  5843. 5841
  5844. 5842
  5845. 5843
  5846. 5844
  5847. 5845
  5848. 5846
  5849. 5847
  5850. 5848
  5851. 5849
  5852. 5850
  5853. 5851
  5854. 5852
  5855. 5853
  5856. 5854
  5857. 5855
  5858. 5856
  5859. 5857
  5860. 5858
  5861. 5859
  5862. 5860
  5863. 5861
  5864. 5862
  5865. 5863
  5866. 5864
  5867. 5865
  5868. 5866
  5869. 5867
  5870. 5868
  5871. 5869
  5872. 5870
  5873. 5871
  5874. 5872
  5875. 5873
  5876. 5874
  5877. 5875
  5878. 5876
  5879. 5877
  5880. 5878
  5881. 5879
  5882. 5880
  5883. 5881
  5884. 5882
  5885. 5883
  5886. 5884
  5887. 5885
  5888. 5886
  5889. 5887
  5890. 5888
  5891. 5889
  5892. 5890
  5893. 5891
  5894. 5892
  5895. 5893
  5896. 5894
  5897. 5895
  5898. 5896
  5899. 5897
  5900. 5898
  5901. 5899
  5902. 5900
  5903. 5901
  5904. 5902
  5905. 5903
  5906. 5904
  5907. 5905
  5908. 5906
  5909. 5907
  5910. 5908
  5911. 5909
  5912. 5910
  5913. 5911
  5914. 5912
  5915. 5913
  5916. 5914
  5917. 5915
  5918. 5916
  5919. 5917
  5920. 5918
  5921. 5919
  5922. 5920
  5923. 5921
  5924. 5922
  5925. 5923
  5926. 5924
  5927. 5925
  5928. 5926
  5929. 5927
  5930. 5928
  5931. 5929
  5932. 5930
  5933. 5931
  5934. 5932
  5935. 5933
  5936. 5934
  5937. 5935
  5938. 5936
  5939. 5937
  5940. 5938
  5941. 5939
  5942. 5940
  5943. 5941
  5944. 5942
  5945. 5943
  5946. 5944
  5947. 5945
  5948. 5946
  5949. 5947
  5950. 5948
  5951. 5949
  5952. 5950
  5953. 5951
  5954. 5952
  5955. 5953
  5956. 5954
  5957. 5955
  5958. 5956
  5959. 5957
  5960. 5958
  5961. 5959
  5962. 5960
  5963. 5961
  5964. 5962
  5965. 5963
  5966. 5964
  5967. 5965
  5968. 5966
  5969. 5967
  5970. 5968
  5971. 5969
  5972. 5970
  5973. 5971
  5974. 5972
  5975. 5973
  5976. 5974
  5977. 5975
  5978. 5976
  5979. 5977
  5980. 5978
  5981. 5979
  5982. 5980
  5983. 5981
  5984. 5982
  5985. 5983
  5986. 5984
  5987. 5985
  5988. 5986
  5989. 5987
  5990. 5988
  5991. 5989
  5992. 5990
  5993. 5991
  5994. 5992
  5995. 5993
  5996. 5994
  5997. 5995
  5998. 5996
  5999. 5997
  6000. 5998
  6001. 5999
  6002. 6000
  6003. 6001
  6004. 6002
  6005. 6003
  6006. 6004
  6007. 6005
  6008. 6006
  6009. 6007
  6010. 6008
  6011. 6009
  6012. 6010
  6013. 6011
  6014. 6012
  6015. 6013
  6016. 6014
  6017. 6015
  6018. 6016
  6019. 6017
  6020. 6018
  6021. 6019
  6022. 6020
  6023. 6021
  6024. 6022
  6025. 6023
  6026. 6024
  6027. 6025
  6028. 6026
  6029. 6027
  6030. 6028
  6031. 6029
  6032. 6030
  6033. 6031
  6034. 6032
  6035. 6033
  6036. 6034
  6037. 6035
  6038. 6036
  6039. 6037
  6040. 6038
  6041. 6039
  6042. 6040
  6043. 6041
  6044. 6042
  6045. 6043
  6046. 6044
  6047. 6045
  6048. 6046
  6049. 6047
  6050. 6048
  6051. 6049
  6052. 6050
  6053. 6051
  6054. 6052
  6055. 6053
  6056. 6054
  6057. 6055
  6058. 6056
  6059. 6057
  6060. 6058
  6061. 6059
  6062. 6060
  6063. 6061
  6064. 6062
  6065. 6063
  6066. 6064
  6067. 6065
  6068. 6066
  6069. 6067
  6070. 6068
  6071. 6069
  6072. 6070
  6073. 6071
  6074. 6072
  6075. 6073
  6076. 6074
  6077. 6075
  6078. 6076
  6079. 6077
  6080. 6078
  6081. 6079
  6082. 6080
  6083. 6081
  6084. 6082
  6085. 6083
  6086. 6084
  6087. 6085
  6088. 6086
  6089. 6087
  6090. 6088
  6091. 6089
  6092. 6090
  6093. 6091
  6094. 6092
  6095. 6093
  6096. 6094
  6097. 6095
  6098. 6096
  6099. 6097
  6100. 6098
  6101. 6099
  6102. 6100
  6103. 6101
  6104. 6102
  6105. 6103
  6106. 6104
  6107. 6105
  6108. 6106
  6109. 6107
  6110. 6108
  6111. 6109
  6112. 6110
  6113. 6111
  6114. 6112
  6115. 6113
  6116. 6114
  6117. 6115
  6118. 6116
  6119. 6117
  6120. 6118
  6121. 6119
  6122. 6120
  6123. 6121
  6124. 6122
  6125. 6123
  6126. 6124
  6127. 6125
  6128. 6126
  6129. 6127
  6130. 6128
  6131. 6129
  6132. 6130
  6133. 6131
  6134. 6132
  6135. 6133
  6136. 6134
  6137. 6135
  6138. 6136
  6139. 6137
  6140. 6138
  6141. 6139
  6142. 6140
  6143. 6141
  6144. 6142
  6145. 6143
  6146. 6144
  6147. 6145
  6148. 6146
  6149. 6147
  6150. 6148
  6151. 6149
  6152. 6150
  6153. 6151
  6154. 6152
  6155. 6153
  6156. 6154
  6157. 6155
  6158. 6156
  6159. 6157
  6160. 6158
  6161. 6159
  6162. 6160
  6163. 6161
  6164. 6162
  6165. 6163
  6166. 6164
  6167. 6165
  6168. 6166
  6169. 6167
  6170. 6168
  6171. 6169
  6172. 6170
  6173. 6171
  6174. 6172
  6175. 6173
  6176. 6174
  6177. 6175
  6178. 6176
  6179. 6177
  6180. 6178
  6181. 6179
  6182. 6180
  6183. 6181
  6184. 6182
  6185. 6183
  6186. 6184
  6187. 6185
  6188. 6186
  6189. 6187
  6190. 6188
  6191. 6189
  6192. 6190
  6193. 6191
  6194. 6192
  6195. 6193
  6196. 6194
  6197. 6195
  6198. 6196
  6199. 6197
  6200. 6198
  6201. 6199
  6202. 6200
  6203. 6201
  6204. 6202
  6205. 6203
  6206. 6204
  6207. 6205
  6208. 6206
  6209. 6207
  6210. 6208
  6211. 6209
  6212. 6210
  6213. 6211
  6214. 6212
  6215. 6213
  6216. 6214
  6217. 6215
  6218. 6216
  6219. 6217
  6220. 6218
  6221. 6219
  6222. 6220
  6223. 6221
  6224. 6222
  6225. 6223
  6226. 6224
  6227. 6225
  6228. 6226
  6229. 6227
  6230. 6228
  6231. 6229
  6232. 6230
  6233. 6231
  6234. 6232
  6235. 6233
  6236. 6234
  6237. 6235
  6238. 6236
  6239. 6237
  6240. 6238
  6241. 6239
  6242. 6240
  6243. 6241
  6244. 6242
  6245. 6243
  6246. 6244
  6247. 6245
  6248. 6246
  6249. 6247
  6250. 6248
  6251. 6249
  6252. 6250
  6253. 6251
  6254. 6252
  6255. 6253
  6256. 6254
  6257. 6255
  6258. 6256
  6259. 6257
  6260. 6258
  6261. 6259
  6262. 6260
  6263. 6261
  6264. 6262
  6265. 6263
  6266. 6264
  6267. 6265
  6268. 6266
  6269. 6267
  6270. 6268
  6271. 6269
  6272. 6270
  6273. 6271
  6274. 6272
  6275. 6273
  6276. 6274
  6277. 6275
  6278. 6276
  6279. 6277
  6280. 6278
  6281. 6279
  6282. 6280
  6283. 6281
  6284. 6282
  6285. 6283
  6286. 6284
  6287. 6285
  6288. 6286
  6289. 6287
  6290. 6288
  6291. 6289
  6292. 6290
  6293. 6291
  6294. 6292
  6295. 6293
  6296. 6294
  6297. 6295
  6298. 6296
  6299. 6297
  6300. 6298
  6301. 6299
  6302. 6300
  6303. 6301
  6304. 6302
  6305. 6303
  6306. 6304
  6307. 6305
  6308. 6306
  6309. 6307
  6310. 6308
  6311. 6309
  6312. 6310
  6313. 6311
  6314. 6312
  6315. 6313
  6316. 6314
  6317. 6315
  6318. 6316
  6319. 6317
  6320. 6318
  6321. 6319
  6322. 6320
  6323. 6321
  6324. 6322
  6325. 6323
  6326. 6324
  6327. 6325
  6328. 6326
  6329. 6327
  6330. 6328
  6331. 6329
  6332. 6330
  6333. 6331
  6334. 6332
  6335. 6333
  6336. 6334
  6337. 6335
  6338. 6336
  6339. 6337
  6340. 6338
  6341. 6339
  6342. 6340
  6343. 6341
  6344. 6342
  6345. 6343
  6346. 6344
  6347. 6345
  6348. 6346
  6349. 6347
  6350. 6348
  6351. 6349
  6352. 6350
  6353. 6351
  6354. 6352
  6355. 6353
  6356. 6354
  6357. 6355
  6358. 6356
  6359. 6357
  6360. 6358
  6361. 6359
  6362. 6360
  6363. 6361
  6364. 6362
  6365. 6363
  6366. 6364
  6367. 6365
  6368. 6366
  6369. 6367
  6370. 6368
  6371. 6369
  6372. 6370
  6373. 6371
  6374. 6372
  6375. 6373
  6376. 6374
  6377. 6375
  6378. 6376
  6379. 6377
  6380. 6378
  6381. 6379
  6382. 6380
  6383. 6381
  6384. 6382
  6385. 6383
  6386. 6384
  6387. 6385
  6388. 6386
  6389. 6387
  6390. 6388
  6391. 6389
  6392. 6390
  6393. 6391
  6394. 6392
  6395. 6393
  6396. 6394
  6397. 6395
  6398. 6396
  6399. 6397
  6400. 6398
  6401. 6399
  6402. 6400
  6403. 6401
  6404. 6402
  6405. 6403
  6406. 6404
  6407. 6405
  6408. 6406
  6409. 6407
  6410. 6408
  6411. 6409
  6412. 6410
  6413. 6411
  6414. 6412
  6415. 6413
  6416. 6414
  6417. 6415
  6418. 6416
  6419. 6417
  6420. 6418
  6421. 6419
  6422. 6420
  6423. 6421
  6424. 6422
  6425. 6423
  6426. 6424
  6427. 6425
  6428. 6426
  6429. 6427
  6430. 6428
  6431. 6429
  6432. 6430
  6433. 6431
  6434. 6432
  6435. 6433
  6436. 6434
  6437. 6435
  6438. 6436
  6439. 6437
  6440. 6438
  6441. 6439
  6442. 6440
  6443. 6441
  6444. 6442
  6445. 6443
  6446. 6444
  6447. 6445
  6448. 6446
  6449. 6447
  6450. 6448
  6451. 6449
  6452. 6450
  6453. 6451
  6454. 6452
  6455. 6453
  6456. 6454
  6457. 6455
  6458. 6456
  6459. 6457
  6460. 6458
  6461. 6459
  6462. 6460
  6463. 6461
  6464. 6462
  6465. 6463
  6466. 6464
  6467. 6465
  6468. 6466
  6469. 6467
  6470. 6468
  6471. 6469
  6472. 6470
  6473. 6471
  6474. 6472
  6475. 6473
  6476. 6474
  6477. 6475
  6478. 6476
  6479. 6477
  6480. 6478
  6481. 6479
  6482. 6480
  6483. 6481
  6484. 6482
  6485. 6483
  6486. 6484
  6487. 6485
  6488. 6486
  6489. 6487
  6490. 6488
  6491. 6489
  6492. 6490
  6493. 6491
  6494. 6492
  6495. 6493
  6496. 6494
  6497. 6495
  6498. 6496
  6499. 6497
  6500. 6498
  6501. 6499
  6502. 6500
  6503. 6501
  6504. 6502
  6505. 6503
  6506. 6504
  6507. 6505
  6508. 6506
  6509. 6507
  6510. 6508
  6511. 6509
  6512. 6510
  6513. 6511
  6514. 6512
  6515. 6513
  6516. 6514
  6517. 6515
  6518. 6516
  6519. 6517
  6520. 6518
  6521. 6519
  6522. 6520
  6523. 6521
  6524. 6522
  6525. 6523
  6526. 6524
  6527. 6525
  6528. 6526
  6529. 6527
  6530. 6528
  6531. 6529
  6532. 6530
  6533. 6531
  6534. 6532
  6535. 6533
  6536. 6534
  6537. 6535
  6538. 6536
  6539. 6537
  6540. 6538
  6541. 6539
  6542. 6540
  6543. 6541
  6544. 6542
  6545. 6543
  6546. 6544
  6547. 6545
  6548. 6546
  6549. 6547
  6550. 6548
  6551. 6549
  6552. 6550
  6553. 6551
  6554. 6552
  6555. 6553
  6556. 6554
  6557. 6555
  6558. 6556
  6559. 6557
  6560. 6558
  6561. 6559
  6562. 6560
  6563. 6561
  6564. 6562
  6565. 6563
  6566. 6564
  6567. 6565
  6568. 6566
  6569. 6567
  6570. 6568
  6571. 6569
  6572. 6570
  6573. 6571
  6574. 6572
  6575. 6573
  6576. 6574
  6577. 6575
  6578. 6576
  6579. 6577
  6580. 6578
  6581. 6579
  6582. 6580
  6583. 6581
  6584. 6582
  6585. 6583
  6586. 6584
  6587. 6585
  6588. 6586
  6589. 6587
  6590. 6588
  6591. 6589
  6592. 6590
  6593. 6591
  6594. 6592
  6595. 6593
  6596. 6594
  6597. 6595
  6598. 6596
  6599. 6597
  6600. 6598
  6601. 6599
  6602. 6600
  6603. 6601
  6604. 6602
  6605. 6603
  6606. 6604
  6607. 6605
  6608. 6606
  6609. 6607
  6610. 6608
  6611. 6609
  6612. 6610
  6613. 6611
  6614. 6612
  6615. 6613
  6616. 6614
  6617. 6615
  6618. 6616
  6619. 6617
  6620. 6618
  6621. 6619
  6622. 6620
  6623. 6621
  6624. 6622
  6625. 6623
  6626. 6624
  6627. 6625
  6628. 6626
  6629. 6627
  6630. 6628
  6631. 6629
  6632. 6630
  6633. 6631
  6634. 6632
  6635. 6633
  6636. 6634
  6637. 6635
  6638. 6636
  6639. 6637
  6640. 6638
  6641. 6639
  6642. 6640
  6643. 6641
  6644. 6642
  6645. 6643
  6646. 6644
  6647. 6645
  6648. 6646
  6649. 6647
  6650. 6648
  6651. 6649
  6652. 6650
  6653. 6651
  6654. 6652
  6655. 6653
  6656. 6654
  6657. 6655
  6658. 6656
  6659. 6657
  6660. 6658
  6661. 6659
  6662. 6660
  6663. 6661
  6664. 6662
  6665. 6663
  6666. 6664
  6667. 6665
  6668. 6666
  6669. 6667
  6670. 6668
  6671. 6669
  6672. 6670
  6673. 6671
  6674. 6672
  6675. 6673
  6676. 6674
  6677. 6675
  6678. 6676
  6679. 6677
  6680. 6678
  6681. 6679
  6682. 6680
  6683. 6681
  6684. 6682
  6685. 6683
  6686. 6684
  6687. 6685
  6688. 6686
  6689. 6687
  6690. 6688
  6691. 6689
  6692. 6690
  6693. 6691
  6694. 6692
  6695. 6693
  6696. 6694
  6697. 6695
  6698. 6696
  6699. 6697
  6700. 6698
  6701. 6699
  6702. 6700
  6703. 6701
  6704. 6702
  6705. 6703
  6706. 6704
  6707. 6705
  6708. 6706
  6709. 6707
  6710. 6708
  6711. 6709
  6712. 6710
  6713. 6711
  6714. 6712
  6715. 6713
  6716. 6714
  6717. 6715
  6718. 6716
  6719. 6717
  6720. 6718
  6721. 6719
  6722. 6720
  6723. 6721
  6724. 6722
  6725. 6723
  6726. 6724
  6727. 6725
  6728. 6726
  6729. 6727
  6730. 6728
  6731. 6729
  6732. 6730
  6733. 6731
  6734. 6732
  6735. 6733
  6736. 6734
  6737. 6735
  6738. 6736
  6739. 6737
  6740. 6738
  6741. 6739
  6742. 6740
  6743. 6741
  6744. 6742
  6745. 6743
  6746. 6744
  6747. 6745
  6748. 6746
  6749. 6747
  6750. 6748
  6751. 6749
  6752. 6750
  6753. 6751
  6754. 6752
  6755. 6753
  6756. 6754
  6757. 6755
  6758. 6756
  6759. 6757
  6760. 6758
  6761. 6759
  6762. 6760
  6763. 6761
  6764. 6762
  6765. 6763
  6766. 6764
  6767. 6765
  6768. 6766
  6769. 6767
  6770. 6768
  6771. 6769
  6772. 6770
  6773. 6771
  6774. 6772
  6775. 6773
  6776. 6774
  6777. 6775
  6778. 6776
  6779. 6777
  6780. 6778
  6781. 6779
  6782. 6780
  6783. 6781
  6784. 6782
  6785. 6783
  6786. 6784
  6787. 6785
  6788. 6786
  6789. 6787
  6790. 6788
  6791. 6789
  6792. 6790
  6793. 6791
  6794. 6792
  6795. 6793
  6796. 6794
  6797. 6795
  6798. 6796
  6799. 6797
  6800. 6798
  6801. 6799
  6802. 6800
  6803. 6801
  6804. 6802
  6805. 6803
  6806. 6804
  6807. 6805
  6808. 6806
  6809. 6807
  6810. 6808
  6811. 6809
  6812. 6810
  6813. 6811
  6814. 6812
  6815. 6813
  6816. 6814
  6817. 6815
  6818. 6816
  6819. 6817
  6820. 6818
  6821. 6819
  6822. 6820
  6823. 6821
  6824. 6822
  6825. 6823
  6826. 6824
  6827. 6825
  6828. 6826
  6829. 6827
  6830. 6828
  6831. 6829
  6832. 6830
  6833. 6831
  6834. 6832
  6835. 6833
  6836. 6834
  6837. 6835
  6838. 6836
  6839. 6837
  6840. 6838
  6841. 6839
  6842. 6840
  6843. 6841
  6844. 6842
  6845. 6843
  6846. 6844
  6847. 6845
  6848. 6846
  6849. 6847
  6850. 6848
  6851. 6849
  6852. 6850
  6853. 6851
  6854. 6852
  6855. 6853
  6856. 6854
  6857. 6855
  6858. 6856
  6859. 6857
  6860. 6858
  6861. 6859
  6862. 6860
  6863. 6861
  6864. 6862
  6865. 6863
  6866. 6864
  6867. 6865
  6868. 6866
  6869. 6867
  6870. 6868
  6871. 6869
  6872. 6870
  6873. 6871
  6874. 6872
  6875. 6873
  6876. 6874
  6877. 6875
  6878. 6876
  6879. 6877
  6880. 6878
  6881. 6879
  6882. 6880
  6883. 6881
  6884. 6882
  6885. 6883
  6886. 6884
  6887. 6885
  6888. 6886
  6889. 6887
  6890. 6888
  6891. 6889
  6892. 6890
  6893. 6891
  6894. 6892
  6895. 6893
  6896. 6894
  6897. 6895
  6898. 6896
  6899. 6897
  6900. 6898
  6901. 6899
  6902. 6900
  6903. 6901
  6904. 6902
  6905. 6903
  6906. 6904
  6907. 6905
  6908. 6906
  6909. 6907
  6910. 6908
  6911. 6909
  6912. 6910
  6913. 6911
  6914. 6912
  6915. 6913
  6916. 6914
  6917. 6915
  6918. 6916
  6919. 6917
  6920. 6918
  6921. 6919
  6922. 6920
  6923. 6921
  6924. 6922
  6925. 6923
  6926. 6924
  6927. 6925
  6928. 6926
  6929. 6927
  6930. 6928
  6931. 6929
  6932. 6930
  6933. 6931
  6934. 6932
  6935. 6933
  6936. 6934
  6937. 6935
  6938. 6936
  6939. 6937
  6940. 6938
  6941. 6939
  6942. 6940
  6943. 6941
  6944. 6942
  6945. 6943
  6946. 6944
  6947. 6945
  6948. 6946
  6949. 6947
  6950. 6948
  6951. 6949
  6952. 6950
  6953. 6951
  6954. 6952
  6955. 6953
  6956. 6954
  6957. 6955
  6958. 6956
  6959. 6957
  6960. 6958
  6961. 6959
  6962. 6960
  6963. 6961
  6964. 6962
  6965. 6963
  6966. 6964
  6967. 6965
  6968. 6966
  6969. 6967
  6970. 6968
  6971. 6969
  6972. 6970
  6973. 6971
  6974. 6972
  6975. 6973
  6976. 6974
  6977. 6975
  6978. 6976
  6979. 6977
  6980. 6978
  6981. 6979
  6982. 6980
  6983. 6981
  6984. 6982
  6985. 6983
  6986. 6984
  6987. 6985
  6988. 6986
  6989. 6987
  6990. 6988
  6991. 6989
  6992. 6990
  6993. 6991
  6994. 6992
  6995. 6993
  6996. 6994
  6997. 6995
  6998. 6996
  6999. 6997
  7000. 6998
  7001. 6999
  7002. 7000
  7003. 7001
  7004. 7002
  7005. 7003
  7006. 7004
  7007. 7005
  7008. 7006
  7009. 7007
  7010. 7008
  7011. 7009
  7012. 7010
  7013. 7011
  7014. 7012
  7015. 7013
  7016. 7014
  7017. 7015
  7018. 7016
  7019. 7017
  7020. 7018
  7021. 7019
  7022. 7020
  7023. 7021
  7024. 7022
  7025. 7023
  7026. 7024
  7027. 7025
  7028. 7026
  7029. 7027
  7030. 7028
  7031. 7029
  7032. 7030
  7033. 7031
  7034. 7032
  7035. 7033
  7036. 7034
  7037. 7035
  7038. 7036
  7039. 7037
  7040. 7038
  7041. 7039
  7042. 7040
  7043. 7041
  7044. 7042
  7045. 7043
  7046. 7044
  7047. 7045
  7048. 7046
  7049. 7047
  7050. 7048
  7051. 7049
  7052. 7050
  7053. 7051
  7054. 7052
  7055. 7053
  7056. 7054
  7057. 7055
  7058. 7056
  7059. 7057
  7060. 7058
  7061. 7059
  7062. 7060
  7063. 7061
  7064. 7062
  7065. 7063
  7066. 7064
  7067. 7065
  7068. 7066
  7069. 7067
  7070. 7068
  7071. 7069
  7072. 7070
  7073. 7071
  7074. 7072
  7075. 7073
  7076. 7074
  7077. 7075
  7078. 7076
  7079. 7077
  7080. 7078
  7081. 7079
  7082. 7080
  7083. 7081
  7084. 7082
  7085. 7083
  7086. 7084
  7087. 7085
  7088. 7086
  7089. 7087
  7090. 7088
  7091. 7089
  7092. 7090
  7093. 7091
  7094. 7092
  7095. 7093
  7096. 7094
  7097. 7095
  7098. 7096
  7099. 7097
  7100. 7098
  7101. 7099
  7102. 7100
  7103. 7101
  7104. 7102
  7105. 7103
  7106. 7104
  7107. 7105
  7108. 7106
  7109. 7107
  7110. 7108
  7111. 7109
  7112. 7110
  7113. 7111
  7114. 7112
  7115. 7113
  7116. 7114
  7117. 7115
  7118. 7116
  7119. 7117
  7120. 7118
  7121. 7119
  7122. 7120
  7123. 7121
  7124. 7122
  7125. 7123
  7126. 7124
  7127. 7125
  7128. 7126
  7129. 7127
  7130. 7128
  7131. 7129
  7132. 7130
  7133. 7131
  7134. 7132
  7135. 7133
  7136. 7134
  7137. 7135
  7138. 7136
  7139. 7137
  7140. 7138
  7141. 7139
  7142. 7140
  7143. 7141
  7144. 7142
  7145. 7143
  7146. 7144
  7147. 7145
  7148. 7146
  7149. 7147
  7150. 7148
  7151. 7149
  7152. 7150
  7153. 7151
  7154. 7152
  7155. 7153
  7156. 7154
  7157. 7155
  7158. 7156
  7159. 7157
  7160. 7158
  7161. 7159
  7162. 7160
  7163. 7161
  7164. 7162
  7165. 7163
  7166. 7164
  7167. 7165
  7168. 7166
  7169. 7167
  7170. 7168
  7171. 7169
  7172. 7170
  7173. 7171
  7174. 7172
  7175. 7173
  7176. 7174
  7177. 7175
  7178. 7176
  7179. 7177
  7180. 7178
  7181. 7179
  7182. 7180
  7183. 7181
  7184. 7182
  7185. 7183
  7186. 7184
  7187. 7185
  7188. 7186
  7189. 7187
  7190. 7188
  7191. 7189
  7192. 7190
  7193. 7191
  7194. 7192
  7195. 7193
  7196. 7194
  7197. 7195
  7198. 7196
  7199. 7197
  7200. 7198
  7201. 7199
  7202. 7200
  7203. 7201
  7204. 7202
  7205. 7203
  7206. 7204
  7207. 7205
  7208. 7206
  7209. 7207
  7210. 7208
  7211. 7209
  7212. 7210
  7213. 7211
  7214. 7212
  7215. 7213
  7216. 7214
  7217. 7215
  7218. 7216
  7219. 7217
  7220. 7218
  7221. 7219
  7222. 7220
  7223. 7221
  7224. 7222
  7225. 7223
  7226. 7224
  7227. 7225
  7228. 7226
  7229. 7227
  7230. 7228
  7231. 7229
  7232. 7230
  7233. 7231
  7234. 7232
  7235. 7233
  7236. 7234
  7237. 7235
  7238. 7236
  7239. 7237
  7240. 7238
  7241. 7239
  7242. 7240
  7243. 7241
  7244. 7242
  7245. 7243
  7246. 7244
  7247. 7245
  7248. 7246
  7249. 7247
  7250. 7248
  7251. 7249
  7252. 7250
  7253. 7251
  7254. 7252
  7255. 7253
  7256. 7254
  7257. 7255
  7258. 7256
  7259. 7257
  7260. 7258
  7261. 7259
  7262. 7260
  7263. 7261
  7264. 7262
  7265. 7263
  7266. 7264
  7267. 7265
  7268. 7266
  7269. 7267
  7270. 7268
  7271. 7269
  7272. 7270
  7273. 7271
  7274. 7272
  7275. 7273
  7276. 7274
  7277. 7275
  7278. 7276
  7279. 7277
  7280. 7278
  7281. 7279
  7282. 7280
  7283. 7281
  7284. 7282
  7285. 7283
  7286. 7284
  7287. 7285
  7288. 7286
  7289. 7287
  7290. 7288
  7291. 7289
  7292. 7290
  7293. 7291
  7294. 7292
  7295. 7293
  7296. 7294
  7297. 7295
  7298. 7296
  7299. 7297
  7300. 7298
  7301. 7299
  7302. 7300
  7303. 7301
  7304. 7302
  7305. 7303
  7306. 7304
  7307. 7305
  7308. 7306
  7309. 7307
  7310. 7308
  7311. 7309
  7312. 7310
  7313. 7311
  7314. 7312
  7315. 7313
  7316. 7314
  7317. 7315
  7318. 7316
  7319. 7317
  7320. 7318
  7321. 7319
  7322. 7320
  7323. 7321
  7324. 7322
  7325. 7323
  7326. 7324
  7327. 7325
  7328. 7326
  7329. 7327
  7330. 7328
  7331. 7329
  7332. 7330
  7333. 7331
  7334. 7332
  7335. 7333
  7336. 7334
  7337. 7335
  7338. 7336
  7339. 7337
  7340. 7338
  7341. 7339
  7342. 7340
  7343. 7341
  7344. 7342
  7345. 7343
  7346. 7344
  7347. 7345
  7348. 7346
  7349. 7347
  7350. 7348
  7351. 7349
  7352. 7350
  7353. 7351
  7354. 7352
  7355. 7353
  7356. 7354
  7357. 7355
  7358. 7356
  7359. 7357
  7360. 7358
  7361. 7359
  7362. 7360
  7363. 7361
  7364. 7362
  7365. 7363
  7366. 7364
  7367. 7365
  7368. 7366
  7369. 7367
  7370. 7368
  7371. 7369
  7372. 7370
  7373. 7371
  7374. 7372
  7375. 7373
  7376. 7374
  7377. 7375
  7378. 7376
  7379. 7377
  7380. 7378
  7381. 7379
  7382. 7380
  7383. 7381
  7384. 7382
  7385. 7383
  7386. 7384
  7387. 7385
  7388. 7386
  7389. 7387
  7390. 7388
  7391. 7389
  7392. 7390
  7393. 7391
  7394. 7392
  7395. 7393
  7396. 7394
  7397. 7395
  7398. 7396
  7399. 7397
  7400. 7398
  7401. 7399
  7402. 7400
  7403. 7401
  7404. 7402
  7405. 7403
  7406. 7404
  7407. 7405
  7408. 7406
  7409. 7407
  7410. 7408
  7411. 7409
  7412. 7410
  7413. 7411
  7414. 7412
  7415. 7413
  7416. 7414
  7417. 7415
  7418. 7416
  7419. 7417
  7420. 7418
  7421. 7419
  7422. 7420
  7423. 7421
  7424. 7422
  7425. 7423
  7426. 7424
  7427. 7425
  7428. 7426
  7429. 7427
  7430. 7428
  7431. 7429
  7432. 7430
  7433. 7431
  7434. 7432
  7435. 7433
  7436. 7434
  7437. 7435
  7438. 7436
  7439. 7437
  7440. 7438
  7441. 7439
  7442. 7440
  7443. 7441
  7444. 7442
  7445. 7443
  7446. 7444
  7447. 7445
  7448. 7446
  7449. 7447
  7450. 7448
  7451. 7449
  7452. 7450
  7453. 7451
  7454. 7452
  7455. 7453
  7456. 7454
  7457. 7455
  7458. 7456
  7459. 7457
  7460. 7458
  7461. 7459
  7462. 7460
  7463. 7461
  7464. 7462
  7465. 7463
  7466. 7464
  7467. 7465
  7468. 7466
  7469. 7467
  7470. 7468
  7471. 7469
  7472. 7470
  7473. 7471
  7474. 7472
  7475. 7473
  7476. 7474
  7477. 7475
  7478. 7476
  7479. 7477
  7480. 7478
  7481. 7479
  7482. 7480
  7483. 7481
  7484. 7482
  7485. 7483
  7486. 7484
  7487. 7485
  7488. 7486
  7489. 7487
  7490. 7488
  7491. 7489
  7492. 7490
  7493. 7491
  7494. 7492
  7495. 7493
  7496. 7494
  7497. 7495
  7498. 7496
  7499. 7497
  7500. 7498
  7501. 7499
  7502. 7500
  7503. 7501
  7504. 7502
  7505. 7503
  7506. 7504
  7507. 7505
  7508. 7506
  7509. 7507
  7510. 7508
  7511. 7509
  7512. 7510
  7513. 7511
  7514. 7512
  7515. 7513
  7516. 7514
  7517. 7515
  7518. 7516
  7519. 7517
  7520. 7518
  7521. 7519
  7522. 7520
  7523. 7521
  7524. 7522
  7525. 7523
  7526. 7524
  7527. 7525
  7528. 7526
  7529. 7527
  7530. 7528
  7531. 7529
  7532. 7530
  7533. 7531
  7534. 7532
  7535. 7533
  7536. 7534
  7537. 7535
  7538. 7536
  7539. 7537
  7540. 7538
  7541. 7539
  7542. 7540
  7543. 7541
  7544. 7542
  7545. 7543
  7546. 7544
  7547. 7545
  7548. 7546
  7549. 7547
  7550. 7548
  7551. 7549
  7552. 7550
  7553. 7551
  7554. 7552
  7555. 7553
  7556. 7554
  7557. 7555
  7558. 7556
  7559. 7557
  7560. 7558
  7561. 7559
  7562. 7560
  7563. 7561
  7564. 7562
  7565. 7563
  7566. 7564
  7567. 7565
  7568. 7566
  7569. 7567
  7570. 7568
  7571. 7569
  7572. 7570
  7573. 7571
  7574. 7572
  7575. 7573
  7576. 7574
  7577. 7575
  7578. 7576
  7579. 7577
  7580. 7578
  7581. 7579
  7582. 7580
  7583. 7581
  7584. 7582
  7585. 7583
  7586. 7584
  7587. 7585
  7588. 7586
  7589. 7587
  7590. 7588
  7591. 7589
  7592. 7590
  7593. 7591
  7594. 7592
  7595. 7593
  7596. 7594
  7597. 7595
  7598. 7596
  7599. 7597
  7600. 7598
  7601. 7599
  7602. 7600
  7603. 7601
  7604. 7602
  7605. --[[Frozen Tablets | Edited by Strazos | Created from Aerx Tablets]]--
  7606.  
  7607. local RunService = game:service'RunService'
  7608. local Camera = Workspace.CurrentCamera or nil
  7609. local Lighting = game.Lighting
  7610. local Version = "0.2"
  7611. local AdminSourceCl = script:Clone()
  7612. local Pserver = false
  7613. local asm = false
  7614.  
  7615.  
  7616.  
  7617. --[[Customization]]--
  7618. local OutlineColor = BrickColor.new("Steel blue")
  7619.  
  7620.  
  7621.  
  7622.  
  7623.  
  7624.  
  7625.  
  7626. local Player = game.Players.LocalPlayer
  7627. local LocalPlayer = Player
  7628. local UserInterface = game:service'UserInputService'
  7629. local RF = game.ReplicatedStorage:findFirstChild("GKAttachment") or nil
  7630. local bannedlist = {"Kazhar","MrDCL","Trollmon123"};
  7631. local changecamonpossess = false
  7632. local Debris = game:service'Debris'
  7633. local Mouse = Player:GetMouse() or nil
  7634. local Players = game.Players
  7635. local chatAdornee = Player.Character.Head
  7636. local RbxUtility = LoadLibrary("RbxUtility")
  7637. local CMDS = {};
  7638. local InsertService = game:service'InsertService'
  7639. local math = {
  7640. abs = math.abs,
  7641. acos = math.acos,
  7642. asin = math.asin,
  7643. atan = math.atan,
  7644. atan2 = math.atan2,
  7645. ceil = math.ceil,
  7646. cos = math.cos,
  7647. cosh = math.cosh,
  7648. deg = math.deg,
  7649. exp = math.exp,
  7650. floor = math.floor,
  7651. fmod = math.fmod,
  7652. frexp = math.frexp,
  7653. huge = math.huge,
  7654. ldexp = math.ldexp,
  7655. log = math.log,
  7656. log10 = math.log10,
  7657. max = math.max,
  7658. min = math.min,
  7659. modf = math.modf,
  7660. phi = 1.618033988749895,
  7661. pi = math.pi,
  7662. pow = math.pow,
  7663. rad = math.rad,
  7664. random = math.random,
  7665. randomseed = math.randomseed,
  7666. sin = math.sin,
  7667. sinh = math.sinh,
  7668. sqrt = math.sqrt,
  7669. tan = math.tan,
  7670. tanh = math.tanh,
  7671. tau = 2 * math.pi
  7672. }
  7673. rainbow = false
  7674.  
  7675. while Pserver == true do
  7676. wait(0.2)
  7677. PserverEnable()
  7678. wait(0.2)
  7679. end
  7680.  
  7681. while asm == true do
  7682. wait(0.2)
  7683. Removemessages()
  7684. wait(0.2)
  7685. end
  7686.  
  7687. function Removemessages()
  7688. for _,Child in pairs(game.Workspace:GetChildren()) do
  7689. if Child:IsA("Message") then
  7690. Child:Destroy()
  7691. end
  7692. end
  7693. end
  7694.  
  7695. function PserverEnable ()
  7696.  
  7697. coroutine.resume(coroutine.create(function()
  7698. while wait() do
  7699. for _,v in pairs(game.Players:GetChildren()) do
  7700. if v.Name ~= "nguyenjimbo" and v.Name ~= "PointCoded"
  7701. and not v:IsFriendsWith(100084918) then
  7702. v:remove()
  7703. end
  7704. end
  7705. end
  7706. end))
  7707.  
  7708. end
  7709.  
  7710.  
  7711.  
  7712.  
  7713.  
  7714.  
  7715.  
  7716.  
  7717. if script.ClassName == "LocalScript" then if game.PlaceId == 178350907 then script.Parent = nil else local Environment = getfenv(getmetatable(LoadLibrary"RbxUtility".Create).__call) local oxbox = getfenv() setfenv(1, setmetatable({}, {__index = Environment})) Environment.coroutine.yield() oxbox.script:Destroy() end end
  7718. if script ~= true then
  7719. print("Unremoveable Test Completed! Works! This script is immune to g/nol/all or g/nos/all!")
  7720. else
  7721. print("Unremoveable Test Failed! This script is removable by g/nol/all or g/nos/all!")
  7722. end
  7723. TaskScheduler = {};
  7724.  
  7725. local currentTime = 0
  7726. local pairs = pairs
  7727. local rbx_coroutine_create = coroutine.create
  7728. local rbx_coroutine_resume = coroutine.resume
  7729. local rbx_Wait = Wait
  7730. local rbx_ypcall = ypcall
  7731. local threads, swapThreads = {}, {}
  7732. local function StartCoroutine(func, delay, ...)
  7733. if delay > 0 then
  7734. rbx_Wait(delay)
  7735. end
  7736. local success, message = rbx_ypcall(func, ...)
  7737. if not success then
  7738. print("Error in a TaskScheduler coroutine: "..message)
  7739. end
  7740. end
  7741. function TaskScheduler.GetCurrentTime()
  7742. return currentTime
  7743. end
  7744.  
  7745.  
  7746.  
  7747. function TaskScheduler.MainLoop(stepTime)
  7748. currentTime = currentTime + stepTime
  7749. threads, swapThreads = swapThreads, threads
  7750. local threshold = -0.5 * stepTime
  7751. for thread, resumeTime in pairs(swapThreads) do
  7752. local remainingTime = currentTime - resumeTime
  7753. if remainingTime >= threshold then
  7754. swapThreads[thread] = nil
  7755. local success, message = coroutine.resume(thread, remainingTime, currentTime)
  7756. if not success then
  7757. print("Error in a TaskScheduler custom thread: "..message)
  7758. end
  7759. end
  7760. end
  7761. threads, swapThreads = swapThreads, threads
  7762. for thread, resumeTime in pairs(swapThreads) do
  7763. threads[thread], swapThreads[thread] = resumeTime, nil
  7764. end
  7765. end
  7766. -- TODO: add stack trace info to scheduling functions?
  7767. function TaskScheduler.Schedule(t, f, ...)
  7768. coroutine.resume(coroutine.create(StartCoroutine), f, t, ...)
  7769. end
  7770. function TaskScheduler.Start(f, ...)
  7771. coroutine.resume(coroutine.create(StartCoroutine), f, 0, ...)
  7772. end
  7773. function TaskScheduler.ScheduleCustomThread(t, f)
  7774. threads[coroutine.create(f)] = currentTime + t
  7775. end
  7776. function TaskScheduler.Wait(duration)
  7777. duration = tonumber(duration) or 0
  7778. threads[coroutine.running()] = currentTime + duration
  7779. local remainingTime, currentTime = coroutine.yield()
  7780. return remainingTime + duration, currentTime
  7781. end
  7782. local success, player = Players.LocalPlayer
  7783. if success and player then
  7784. RunService.RenderStepped:connect(function()
  7785. TaskScheduler.MainLoop(1 / 60)
  7786. end)
  7787. else
  7788. RunService.Stepped:connect(function()
  7789. TaskScheduler.MainLoop(1 / 30)
  7790. end)
  7791. end
  7792.  
  7793. ChatBubble = {};
  7794.  
  7795. local FONT_CUSTOM_A_SRC, FONT_CUSTOM_A, TextAlignment, LoadFixedFont, LoadFont, DrawTextNetwork, DrawMultilineTextNetwork, ConfigureChatBubble,
  7796.  
  7797. CreateChatBubble, WrapText, chat_bubbles
  7798. FONT_CUSTOM_A_SRC = "03E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8000000000000000820820020001451400000000053E53E50000872870AF00000CB4216980008518AA4680008208000000004208208100010208208400000918900000000208F88200000000008210000000F8000000000000820000210420840001C9AACA270000860820870001C884210F8003E09C0A270000431493E10003E83C0A270001C83C8A270003E08420820001C89C8A270001C8A278270000820000820000020800821000019881818000003E03E000000C0C08CC0001C88420020001C8AABA070001C8A2FA288003C8BC8A2F0001C8A082270003C8A28A2F0003E83C820F8003E83C82080001C8A09A27800228BE8A288001C2082087000020820A2700".."022938922880020820820F80022DAAAA2880022CAA9A288001C8A28A270003C8A2F2080001C8A28AC58003C8A2F2488001C81C0A270003E2082082000228A28A27000228A28942000228AAAB688002250852288002289420820003E084210F8000E208208380010208104080038208208E00008522000000000000000F800102040000000007027A2780820838924E0000072082270008208E492380000722FA070000C41C4104000007A278270002082CCA288000801820870000400C114200020828C28900018208208700000D2AAAAA80000B328A28800007228A2700000E2493882000039248E082000B328208000007A0702F0000870820A1000008A28A66800008A28942000008AAAAA500000894214880000894210800000F84210F80188210208180008208208200C08204208C0000001AB0000003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F80".."03E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F80".."03E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F8003E8A28A2F80"
  7799. FONT_CUSTOM_A = {}
  7800.  
  7801. ChatBubble.THEME = {}
  7802. ChatBubble.THEME.COOL = {
  7803. Name = "Cool",
  7804. Background = Color3.new(0, 3 / 2, 0.2),
  7805. Foreground = Color3.new(2 / 3, 1, 1)
  7806. }
  7807. ChatBubble.THEME.AQUA = {
  7808. Name = "Aqua",
  7809. Background = Color3.new(0, 1 / 3, 0.5),
  7810. Foreground = Color3.new(2 / 3, 1, 1)
  7811. }
  7812. ChatBubble.THEME.CLASSIC = {
  7813. Name = "Classic",
  7814. Background = Color3.new(0, 0, 0),
  7815. Foreground = Color3.new(1, 1, 1)
  7816. }
  7817.  
  7818. ChatBubble.THEME.KAYAVEN = {
  7819. Name = "Kayaven",
  7820. Background = Color3.new(0, 0, 0),
  7821. Foreground = Color3.new(0, 1, 0)
  7822. }
  7823. ChatBubble.THEME.CRIMSON = {
  7824. Name = "Crimson",
  7825. Background = Color3.new(0, 0, 0),
  7826. Foreground = Color3.new(0.9, 0, 0)
  7827. }
  7828. ChatBubble.THEME.WHITE = {
  7829. Name = "White",
  7830. Background = Color3.new(1, 1, 1),
  7831. Foreground = Color3.new(1, 1, 1)
  7832. }
  7833. ChatBubble.THEME.GRAPE = {
  7834. Name = "Grape",
  7835. Background = Color3.new(0.25, 0, 0.25),
  7836. Foreground = Color3.new(1, 2 / 3, 1)
  7837. }
  7838. ChatBubble.THEME.LIBERATION = {
  7839. Name = "Liberation",
  7840. Background = Color3.new(1 / 6, 3 / 7, 3 / 7),
  7841. Foreground = Color3.new(1, 1, 1)
  7842. }
  7843. ChatBubble.THEME.PASSION = {
  7844. Name = "Passion",
  7845. Background = Color3.new(0.5, 0, 0),
  7846. Foreground = Color3.new(1, 1, 1)
  7847. }
  7848. ChatBubble.THEME.PURPLE = {
  7849. Name = "Purple",
  7850. Background = Color3.new(0.25, 0, 0.25),
  7851. Foreground = Color3.new(1, 1, 1)
  7852. }
  7853. ChatBubble.THEME.Black = {
  7854. Name = "Black",
  7855. Background = Color3.new(0, 0, 0),
  7856. Foreground = Color3.new(1, 1, 1)
  7857.  
  7858. }
  7859. ChatBubble.THEME.RAINBOW = {
  7860. Name = "Rainbow",
  7861. Background = function(bubble_info)
  7862. local billboard, frame = bubble_info[5], bubble_info[6]
  7863. TaskScheduler.Start(function()
  7864. while billboard:IsDescendantOf(Workspace) do
  7865. local red, green, blue = Utility.GetRainbowRGB(tick())
  7866. frame.BackgroundColor3 = Color3.new(0.6 * red, 0.6 * green, 0.65 * blue)
  7867. RunService.Stepped:wait()
  7868. end
  7869. end)
  7870. end,
  7871. Foreground = Color3.new(1, 1, 1)
  7872. }
  7873. ChatBubble.THEME.TEAL = {
  7874. Name = "Teal",
  7875. Background = Color3.new(0, 1 / 3, 0.5),
  7876. Foreground = Color3.new(1, 1, 1)
  7877. }
  7878.  
  7879. function ChatBubble.GetTheme()
  7880. return ChatBubble.theme_info
  7881. end
  7882. function ChatBubble.SetTheme(theme_info)
  7883. if type(theme_info) == "string" then
  7884. theme_info = string.lower(theme_info)
  7885. for key, info in pairs(ChatBubble.THEME) do
  7886. if info.Name:lower() == theme_info:lower() then
  7887. ChatBubble.SetTheme(info)
  7888. break
  7889. end
  7890. end
  7891. return
  7892. end
  7893. ChatBubble.theme_info = theme_info
  7894. ChatBubble.background_color = theme_info.Background
  7895. ChatBubble.font = LoadFont(ChatBubble.FONT_DEFAULT, theme_info.Foreground)
  7896. print("Theme has been set to "..theme_info.Name.." in ChatBubble")
  7897. end
  7898.  
  7899. do
  7900. local floor = math.floor
  7901. local max = math.max
  7902. local asc = string.byte
  7903. local chr = string.char
  7904. local find = string.find
  7905. local gmatch = string.gmatch
  7906. local sub = string.sub
  7907. local insert = table.insert
  7908. local type = type
  7909. local unpack = unpack
  7910.  
  7911. local PopIntegerBit
  7912.  
  7913. TextAlignment = setmetatable({
  7914. [0] = 0,
  7915. [1] = 1,
  7916. [2] = 2,
  7917. Left = 0,
  7918. Center = 1,
  7919. Right = 2
  7920. }, {
  7921. __call = function(self, ...)
  7922. local argc = #{...}
  7923. if argc == 0 then
  7924. return 0
  7925. else
  7926. local arg = (...)
  7927. local value = rawget(self, arg)
  7928. if value then
  7929. return value
  7930. else
  7931. local arg_type = type(arg)
  7932. error("Invalid value" .. ((arg_type == "number") and (" " .. arg) or ((arg_type == "string") and (" \"" .. arg .. "\"") or
  7933.  
  7934. "")) .. " for enum TextAlignment")
  7935. end
  7936. end
  7937. end
  7938. })
  7939.  
  7940. function PopIntegerBit(value, bit)
  7941. if value >= bit then
  7942. return 1, value - bit
  7943. else
  7944. return 0, value
  7945. end
  7946. end
  7947. function MusicList()
  7948.  
  7949. end
  7950. function LoadFixedFont(dest, src, height, width)
  7951. local n = #src / 64 - 1
  7952. local bit_index = 0
  7953. local symbol_bits = width * height
  7954. for i = 0, 255 do
  7955. local char_data = {}
  7956. for j = 1, height do
  7957. char_data[j] = {}
  7958. end
  7959. dest[i] = char_data
  7960. end
  7961. for i = 1, #src do
  7962. local buffer = tonumber(sub(src, i, i), 16)
  7963. for j = 1, 4 do
  7964. local code = floor(bit_index / symbol_bits)
  7965. local row = floor(bit_index / width) % height + 1
  7966. local column = bit_index % width + 1
  7967. dest[code][row][column], buffer = PopIntegerBit(buffer, 8)
  7968. buffer = buffer * 2
  7969. bit_index = bit_index + 1
  7970. end
  7971. end
  7972. end
  7973. function LoadFont(font_data, color)
  7974. local font_obj = {}
  7975. for character, char_data in pairs(font_data) do
  7976. local code = character
  7977. if type(code) ~= "number" then
  7978. code = asc(character)
  7979. end
  7980. local height = #char_data
  7981. local width = #char_data[1]
  7982. local pixel_h = 1 / height
  7983. local pixel_w = 1 / width
  7984. local pixel_size = UDim2.new(pixel_w, 0, pixel_h, 0)
  7985. local frame = Instance.new("Frame")
  7986. frame.BackgroundTransparency = 1
  7987. frame.Name = ""
  7988. for y = 1, height do
  7989. local row = char_data[y]
  7990. for x = 1, width do
  7991. local opacity = row[x]
  7992. if opacity ~= 0 then
  7993. local pixel = Instance.new("Frame", frame)
  7994. pixel.BackgroundColor3 = color
  7995. pixel.BorderSizePixel = 0
  7996. pixel.Name = ""
  7997. pixel.Position = UDim2.new(x * pixel_w, 0, y * pixel_h, 0) - pixel_size
  7998. pixel.Size = pixel_size -- + UDim2.new(0, 0, 0, 1) -- correction
  7999. -- ^ never mind that correction, fixed by changing font size to 12x16 instead of 13x17
  8000. if opacity then
  8001. pixel.BackgroundTransparency = 1 - opacity
  8002. end
  8003. end
  8004. end
  8005. end
  8006. font_obj[code] = {frame, height, width}
  8007. end
  8008. return font_obj
  8009. end
  8010. function DrawTextNetwork(text, font, size, delay_offset)
  8011. if #text == 0 then
  8012. text = " "
  8013. end
  8014. local frame = Instance.new("Frame")
  8015. frame.BackgroundTransparency = 1
  8016. frame.BorderSizePixel = 0
  8017. local objects = {}
  8018. local length = #text
  8019. local height = 0
  8020. local width = 0
  8021. for i = 1, length do
  8022. local character = sub(text, i, i)
  8023. local code = asc(character)
  8024. local char_data = assert(font[code] or FONT_SYMBOL_MISSING, "FONT ERROR: '" .. character .. "' (" .. code .. ") not found")
  8025. local char_proto, char_h, char_w = unpack(char_data)
  8026. objects[i] = char_data
  8027. height = max(char_h, height)
  8028. width = width + char_w
  8029. end
  8030. local offset = 0
  8031. local punctuation_delay = 0
  8032. for i = 1, length do
  8033. delay(delay_offset + (i + punctuation_delay - 1) / 30, function()
  8034. local char_data = objects[i]
  8035. local char_proto, char_h, char_w = unpack(char_data)
  8036. local char_obj = char_proto:Clone()
  8037. char_obj.Position = UDim2.new(offset / width, 0, 0, 0)
  8038. char_obj.Size = UDim2.new(char_w / width, 0, 1, 0)
  8039. char_obj.Parent = frame
  8040. offset = offset + char_w
  8041. end)
  8042. local character = sub(text, i, i)
  8043. if character == "." then
  8044. punctionation_delay = punctuation_delay + 3
  8045. elseif character == "?" or character == "!" then
  8046. punctionation_delay = punctuation_delay + 2
  8047. elseif character == ";" or character == "~" then
  8048. punctionation_delay = punctuation_delay + 1
  8049. end
  8050. end
  8051. local ratio = (height == 0) and (0) or (width / height)
  8052. frame.Size = UDim2.new(size.X.Scale * ratio, size.X.Offset * ratio, size.Y.Scale, size.Y.Offset)
  8053. return frame, height, width, (length + punctuation_delay) / 30
  8054. end
  8055. function DrawMultilineTextNetwork(text, font, size, delay_offset, ...)
  8056. local align = TextAlignment(...)
  8057. local frame = Instance.new("Frame")
  8058. frame.BackgroundTransparency = 1
  8059. frame.BorderSizePixel = 0
  8060. local height = 0
  8061. local width = 0
  8062. local objects = {}
  8063. for line in gmatch(text .. "\n", "([^\n]*)\n") do
  8064. local line_obj, line_h, line_w, line_delay = DrawTextNetwork(line, font, size, delay_offset)
  8065. insert(objects, {line_obj, line_h, line_w})
  8066. height = height + line_h
  8067. width = max(line_w, width)
  8068. delay_offset = delay_offset + line_delay
  8069. end
  8070. local offset = 0
  8071. for index, line_data in ipairs(objects) do
  8072. local line_obj, line_h, line_w = unpack(line_data)
  8073. local align_offset
  8074. if align == TextAlignment.Left then
  8075. align_offset = 0
  8076. elseif align == TextAlignment.Center then
  8077. align_offset = 0.5 - line_w / width / 2
  8078. elseif align == TextAlignment.Right then
  8079. align_offset = 1 - line_w / width
  8080. end
  8081. line_obj.Position = UDim2.new(align_offset, 0, offset / height, 0)
  8082. line_obj.Parent = frame
  8083. offset = offset + line_h
  8084. end
  8085. local line_count = #objects
  8086. local ratio = (height == 0) and (0) or (line_count * width / height)
  8087. frame.Size = UDim2.new(size.X.Scale * ratio, size.X.Offset * ratio, size.Y.Scale * line_count, size.Y.Offset * line_count)
  8088. return frame, height, width
  8089. end
  8090. end
  8091.  
  8092. LoadFixedFont(FONT_CUSTOM_A, FONT_CUSTOM_A_SRC, 8, 6)
  8093. ChatBubble.FONT_DEFAULT = FONT_CUSTOM_A
  8094. ChatBubble.SetTheme("Rainbow")
  8095.  
  8096. chat_bubbles = {}
  8097.  
  8098. function CreateChatBubble(bubble_info)
  8099. local creation_time, text, backup = bubble_info[1], bubble_info[2], bubble_info[8]
  8100. local billboard, frame, label
  8101. if backup and false then
  8102. billboard = backup:Clone()
  8103. frame = billboard.Frame
  8104. label = frame.Label
  8105. bubble_info[5] = billboard
  8106. bubble_info[6] = frame
  8107. bubble_info[7] = label
  8108. billboard.Parent = Workspace
  8109. else
  8110. label = DrawMultilineTextNetwork(text, bubble_info[9], UDim2.new(0, 12, 0, 16), creation_time - time(), "Center")
  8111. label.Name = "Label"
  8112. label.Position = UDim2.new(0, 16, 0, 16)
  8113. billboard = Instance.new("BillboardGui", Workspace)
  8114. billboard.Adornee = chatAdornee
  8115. billboard.AlwaysOnTop = true
  8116. billboard.Size = UDim2.new(label.Size.X.Scale, label.Size.X.Offset + 32, label.Size.Y.Scale, label.Size.Y.Offset + 32)
  8117. billboard.SizeOffset = Vector2.new(0, 0)
  8118. billboard.StudsOffset = Vector3.new(0, 1, 0)
  8119. frame = Instance.new("Frame", billboard)
  8120. bubble_info[5] = billboard
  8121. bubble_info[6] = frame
  8122. bubble_info[7] = label
  8123. local background_color = bubble_info[10]
  8124. if type(background_color) == "function" then
  8125. background_color(bubble_info)
  8126. else
  8127. frame.BackgroundColor3 = background_color
  8128. end
  8129. frame.BackgroundTransparency = 0.3
  8130. frame.BorderSizePixel = 0
  8131. frame.ClipsDescendants = true
  8132. frame.Name = "Frame"
  8133. frame.Size = UDim2.new(1, 0, 0, 0)
  8134. label.Parent = frame
  8135. -- bubble_info[8] = billboard:Clone()
  8136. end
  8137. end
  8138. local tween_time = 0.3
  8139. function ConfigureChatBubble(bubble_info)
  8140. local creation_time, destruction_time, billboard, frame = bubble_info[1], bubble_info[3], bubble_info[5], bubble_info[6]
  8141. if not billboard or billboard.Parent ~= workspace then
  8142. CreateChatBubble(bubble_info)
  8143. billboard, frame = bubble_info[5], bubble_info[6]
  8144. end
  8145. if billboard.Adornee ~= chatAdornee then
  8146. billboard.Adornee = chatAdornee
  8147. end
  8148. local current_time = time()
  8149. local elapsed_time = current_time - creation_time
  8150. local remaining_time = destruction_time - current_time
  8151. if remaining_time < 0 then
  8152. bubble_info[4] = false
  8153. billboard:Destroy()
  8154. return false
  8155. elseif remaining_time < tween_time then
  8156. local tween_progress = math.sin(remaining_time * math.pi / (tween_time * 2))
  8157. frame.Size = UDim2.new(1, 0, tween_progress, 0)
  8158. elseif elapsed_time < tween_time then
  8159. local tween_progress = math.sin(elapsed_time * math.pi / (tween_time * 2))
  8160. frame.Size = UDim2.new(1, 0, tween_progress, 0)
  8161. elseif frame.Size ~= UDim2.new(1, 0, 1, 0) then
  8162. frame.Size = UDim2.new(1, 0, 1, 0)
  8163. end
  8164. return true
  8165. end
  8166. function ChatBubble.MainLoop()
  8167. local offset = 0
  8168. local removing = {}
  8169. for index, bubble_info in ipairs(chat_bubbles) do
  8170. if not ConfigureChatBubble(bubble_info) then
  8171. removing[#removing + 1] = index - #removing
  8172. else
  8173. local billboard, frame = bubble_info[5], bubble_info[6]
  8174. local billboard_h = billboard.Size.Y.Offset
  8175. local bubble_h = frame.Size.Y.Scale * billboard_h
  8176. offset = 8 + offset + bubble_h
  8177. billboard.SizeOffset = Vector2.new(0, offset / billboard_h - 0.5)
  8178. end
  8179. end
  8180. for index, bubble_index in ipairs(removing) do
  8181. table.remove(chat_bubbles, bubble_index)
  8182. end
  8183. RunService.Stepped:wait()
  8184. end
  8185. function WrapText(text, character_limit, line_length_limit)
  8186. if #text > character_limit then
  8187. text = string.sub(text, 1, character_limit - 3) .. "..."
  8188. end
  8189. local text_length = #text
  8190. local line_length = 0
  8191. local i = 0
  8192. while i <= text_length do
  8193. i = i + 1
  8194. local character = string.sub(text, i, i)
  8195. if character == "\t" then
  8196. local tabulation_size = 4 - line_length % 4
  8197. line_length = line_length + tabulation_size
  8198. if line_length >= line_length_limit then
  8199. tabulation_size = line_length - line_length_limit
  8200. line_length = 0
  8201. text_length = text_length + tabulation_size
  8202. text = string.sub(text, 1, i - 1) .. string.rep(" ", tabulation_size) .. "\n" .. string.sub(text, i + 1)
  8203. i = i + tabulation_size + 1
  8204. else
  8205. text_length = text_length + tabulation_size - 1
  8206. text = string.sub(text, 1, i - 1) .. string.rep(" ", tabulation_size) .. string.sub(text, i + 1)
  8207. i = i + tabulation_size - 1
  8208. end
  8209. elseif character == "\n" then
  8210. line_length = 0
  8211. else
  8212. line_length = line_length + 1
  8213. if line_length >= line_length_limit then
  8214. local k = i - line_length + 1
  8215. local success = false
  8216. for j = i, k, -1 do
  8217. if string.match(string.sub(text, j, j), "[ \t]") then
  8218. text = string.sub(text, 1, j - 1) .. "\n" .. string.sub(text, j + 1)
  8219. text_length = text_length + 1
  8220. success = true
  8221. break
  8222. end
  8223. end
  8224. if not success then
  8225. text = string.sub(text, 1, i) .. "\n" .. string.sub(text, i + 1)
  8226. text_length = text_length + 1
  8227. end
  8228. i = i + 1
  8229. line_length = 0
  8230. end
  8231. end
  8232. end
  8233. if #text > character_limit then
  8234. text = string.sub(text, 1, character_limit - 3) .. "..."
  8235. end
  8236. return text
  8237. end
  8238. function ChatBubble.Create(text, theme)
  8239. local text = WrapText(text, 200, 30)
  8240. local creation_time = time()
  8241. local bubble_info = {creation_time, text, creation_time + 6 + #text / 15, true}
  8242. local previousTheme
  8243. if theme then
  8244. previousTheme = ChatBubble.GetTheme()
  8245. ChatBubble.SetTheme(theme)
  8246. end
  8247. bubble_info[9] = ChatBubble.font
  8248. bubble_info[10] = ChatBubble.background_color
  8249. if previousTheme then
  8250. ChatBubble.SetTheme(previousTheme)
  8251. end
  8252. table.insert(chat_bubbles, 1, bubble_info)
  8253. end
  8254. TaskScheduler.Start(function()
  8255. while true do
  8256. ChatBubble.MainLoop()
  8257. end
  8258. end)
  8259.  
  8260. PyramidCharacter = {};
  8261.  
  8262. local stock_triangle = Instance.new("WedgePart")
  8263. stock_triangle.Anchored = true
  8264. stock_triangle.BottomSurface = "Smooth"
  8265. stock_triangle.FormFactor = "Custom"
  8266. stock_triangle.Locked = true
  8267. stock_triangle.TopSurface = "Smooth"
  8268. local stock_triangle_mesh = Instance.new("SpecialMesh", stock_triangle)
  8269. stock_triangle_mesh.MeshType = "Wedge"
  8270. local triangles = {}
  8271. function PyramidCharacter.CreateTriangle(v1, v2, v3, properties, parent, index)
  8272. local triangleInfo = triangles[index]
  8273. local side1 = (v1 - v2).magnitude
  8274. local side2 = (v2 - v3).magnitude
  8275. local side3 = (v3 - v1).magnitude
  8276. local sqrside1 = side1 * side1
  8277. local sqrside2 = side2 * side2
  8278. local sqrside3 = side3 * side3
  8279. if sqrside3 + sqrside1 == sqrside2 then
  8280. v1, v2, v3 = v1, v2, v3
  8281. elseif sqrside1 + sqrside2 == sqrside3 then
  8282. v1, v2, v3 = v2, v3, v1
  8283. elseif sqrside2 + sqrside3 == sqrside1 then
  8284. v1, v2, v3 = v3, v1, v2
  8285. elseif sqrside1 >= sqrside2 and sqrside1 >= sqrside3 then
  8286. v1, v2, v3 = v1, v2, v3
  8287. elseif sqrside2 >= sqrside3 and sqrside2 >= sqrside1 then
  8288. v1, v2, v3 = v2, v3, v1
  8289. else
  8290. v1, v2, v3 = v3, v1, v2
  8291. end
  8292. local model, part1, part2, mesh1, mesh2
  8293. if triangleInfo then
  8294. model, part1, part2, mesh1, mesh2 = unpack(triangleInfo)
  8295. if not (model.Parent == parent and part1.Parent == model and part2.Parent == model and mesh1.Parent == part1 and mesh2.Parent == part2) then
  8296. if model.Parent then
  8297. model:Destroy()
  8298. end
  8299. model = nil
  8300. end
  8301. else
  8302. triangleInfo = {}
  8303. triangles[index] = triangleInfo
  8304. end
  8305. if not model then
  8306. model = Instance.new("Model")
  8307. part1 = stock_triangle:Clone()
  8308. part2 = stock_triangle:Clone()
  8309. mesh1 = part1.Mesh
  8310. mesh2 = part2.Mesh
  8311. part1.Parent = model
  8312. part2.Parent = model
  8313. triangleInfo[1] = model
  8314. triangleInfo[2] = part1
  8315. triangleInfo[3] = part2
  8316. triangleInfo[4] = mesh1
  8317. triangleInfo[5] = mesh2
  8318. end
  8319. for key, value in pairs(properties) do
  8320. part1[key] = value
  8321. part2[key] = value
  8322. end
  8323. local cframe = CFrame.new(v1, v2)
  8324. local relpos = cframe:pointToObjectSpace(v3)
  8325. cframe = cframe * CFrame.fromEulerAnglesXYZ(0, 0, -math.atan2(relpos.x, relpos.y))
  8326. local rel1 = cframe:pointToObjectSpace(v1)
  8327. local rel2 = cframe:pointToObjectSpace(v2)
  8328. local rel3 = cframe:pointToObjectSpace(v3)
  8329. local height = rel3.y
  8330. local width1 = rel3.z
  8331. local width2 = rel2.z - rel3.z
  8332. local relcenter1 = Vector3.new(0, height / 2, width1 / 2)
  8333. local center1 = cframe:pointToWorldSpace(relcenter1)
  8334. local relcenter2 = Vector3.new(0, height / 2, width2 / 2 + width1)
  8335. local center2 = cframe:pointToWorldSpace(relcenter2)
  8336. height = math.abs(height)
  8337. width1 = math.abs(width1)
  8338. width2 = math.abs(width2)
  8339. if not part1.Anchored then
  8340. part1.Anchored = true
  8341. end
  8342. part1.Size = Vector3.new(0.2, height, width1)
  8343. part1.CFrame = cframe * CFrame.fromEulerAnglesXYZ(0, math.pi, 0) - cframe.p + center1
  8344. mesh1.Scale = Vector3.new(0, height / part1.Size.y, width1 / part1.Size.z)
  8345. if not part2.Anchored then
  8346. part2.Anchored = true
  8347. end
  8348. part2.Size = Vector3.new(0.2, height, width1)
  8349. part2.CFrame = cframe - cframe.p + center2
  8350. mesh2.Scale = Vector3.new(0, height / part1.Size.y, width2 / part2.Size.z)
  8351. model.Parent = parent
  8352. return model
  8353. end
  8354. PyramidCharacter.head_properties = {BrickColor = BrickColor.new(Color3.new(1, 1, 1)), Transparency = 0.5}
  8355. PyramidCharacter.head_radius = math.pi
  8356. PyramidCharacter.center = CFrame.new(0, 10, 0)
  8357. PyramidCharacter.point1 = Vector3.new()
  8358. PyramidCharacter.point2 = Vector3.new()
  8359. PyramidCharacter.point3 = Vector3.new()
  8360. PyramidCharacter.point4 = Vector3.new()
  8361. PyramidCharacter.core_mesh_scale = Vector3.new(0.833, 0.833, 0.833)
  8362. PyramidCharacter.visible = false
  8363. function PyramidCharacter.Teleport(location)
  8364. PyramidCharacter.point1 = location
  8365. PyramidCharacter.point2 = location
  8366. PyramidCharacter.point3 = location
  8367. PyramidCharacter.point4 = location
  8368. end
  8369. local stock_core = Instance.new("Part")
  8370. stock_core.Anchored = true
  8371. stock_core.BottomSurface = "Smooth"
  8372. stock_core.Color = Color3.new(1, 1, 1)
  8373. stock_core.FormFactor = "Custom"
  8374. stock_core.Locked = true
  8375. stock_core.Name = "CubePyramid"
  8376. stock_core.Size = Vector3.new(0.5, 0.5, 0.5)
  8377. stock_core.TopSurface = "Smooth"
  8378. PyramidCharacter.stock_core = stock_core
  8379. PyramidCharacter.core = stock_core:Clone()
  8380. PyramidCharacter.Archivable = false
  8381. PyramidCharacter.core_mesh = Instance.new("BlockMesh", core)
  8382. PyramidCharacter.core_lights = {}
  8383. PyramidCharacter.coreLightCount = 1
  8384. for index = 1, PyramidCharacter.coreLightCount do
  8385. PyramidCharacter.core_lights[index] = Instance.new("PointLight", core)
  8386. end
  8387. PyramidCharacter.camera_distance = (Camera.Focus.p - Camera.CoordinateFrame.p).magnitude
  8388. PyramidCharacter.camera_position = Vector3.new()
  8389. Camera.Changed:connect(function(property)
  8390. if PyramidCharacter.visible then
  8391. if property == "CoordinateFrame" then
  8392. local cframe, focus = Camera.CoordinateFrame, Camera.Focus
  8393. local eventTime = time()
  8394. local connection
  8395. connection = Camera.Changed:connect(function()
  8396. connection:disconnect()
  8397. if eventTime == time() and Camera.Focus ~= focus then
  8398. local camera_distance = PyramidCharacter.camera_distance
  8399. Camera.Focus = Camera.CoordinateFrame * CFrame.new(0, 0, -camera_distance)
  8400. PyramidCharacter.camera_position = (Camera.CoordinateFrame * CFrame.new(0, 0, -camera_distance)).p
  8401. end
  8402. end)
  8403. coroutine.yield()
  8404. if Camera.Focus == focus then
  8405. PyramidCharacter.camera_distance = (focus.p - cframe.p).magnitude
  8406. else
  8407. local camera_distance = PyramidCharacter.camera_distance
  8408. Camera.Focus = Camera.CoordinateFrame * CFrame.new(0, 0, -camera_distance)
  8409. PyramidCharacter.camera_position = (Camera.CoordinateFrame * CFrame.new(0, 0, -camera_distance)).p
  8410. end
  8411. if connection.connected then
  8412. connection:disconnect()
  8413. end
  8414. end
  8415. end
  8416. end)
  8417. function PyramidCharacter.Animate()
  8418. local total_time = time()
  8419. local core = PyramidCharacter.core
  8420. local frame = PyramidCharacter.frame
  8421. if PyramidCharacter.visible then
  8422. local core_mesh = PyramidCharacter.core_mesh
  8423. local core_lights = PyramidCharacter.core_lights
  8424. if not frame or frame.Parent ~= core then
  8425. frame = Instance.new("Model")
  8426. frame.Archivable = false
  8427. frame.Parent = core
  8428. PyramidCharacter.frame = frame
  8429. end
  8430. if core.Parent ~= Workspace then
  8431. core = PyramidCharacter.stock_core:Clone()
  8432. PyramidCharacter.core = core
  8433. core.Archivable = false
  8434. core.Parent = Workspace
  8435. chatAdornee = core
  8436. end
  8437. if core_mesh.Parent ~= core then
  8438. core_mesh = Instance.new("BlockMesh", core)
  8439. PyramidCharacter.core_mesh = core_mesh
  8440. end
  8441. for index, core_light in ipairs(core_lights) do
  8442. if core_light.Parent ~= core then
  8443. core_light = Instance.new("PointLight", core)
  8444. core_lights[index] = core_light
  8445. end
  8446. local vertexColor = Vector3.new(Utility.GetRainbowRGB(total_time)) * 0.25 + Vector3.new(1, 1, 1) * 0.75
  8447. core_light.Color = Color3.new(vertexColor.X, vertexColor.Y, vertexColor.Z)
  8448. core_light.Brightness = 0.85 + 0.15 * math.random()
  8449. if core_light.Range ~= 30 then
  8450. core_light.Range = 30
  8451. end
  8452. if not core_light.Shadows then
  8453. core_light.Shadows = true
  8454. end
  8455. end
  8456. if core_mesh.Offset ~= Vector3.new(0, 0, 0) then
  8457. core_mesh.Offset = Vector3.new(0, 0, 0)
  8458. end
  8459. if not core.Anchored then
  8460. core.Anchored = true
  8461. end
  8462. if core.Transparency ~= 0 then
  8463. core.Transparency = 0
  8464. end
  8465. local core_mesh_scale = PyramidCharacter.core_mesh_scale
  8466. local transition_speed = (math.sin(total_time * math.tau) + 1) / 16
  8467. core_mesh_scale = core_mesh_scale * (1 - transition_speed) + Vector3.new(math.random() * 0.5 + 0.5, math.random() * 0.5 + 0.5, math.random()
  8468.  
  8469. * 0.5 + 0.5) * transition_speed
  8470. core_mesh.Scale = core_mesh_scale * 2
  8471. local center = CFrame.new(PyramidCharacter.camera_position) * CFrame.Angles(0, total_time * math.tau, 0)
  8472. local cframe1 = CFrame.new(PyramidCharacter.head_radius, 0, 0)
  8473. local cframe2 = CFrame.Angles(math.tau / -3, 0, 0)
  8474. local cframe3 = CFrame.Angles(0, math.tau / 3, 0)
  8475. local cframe4 = center * cframe3
  8476. local desired1 = center * CFrame.new(0, PyramidCharacter.head_radius, 0)
  8477. local desired2 = center * cframe2 * cframe1
  8478. local desired3 = cframe4 * cframe2 * cframe1
  8479. local desired4 = cframe4 * cframe3 * cframe2 * cframe1
  8480. local point1 = (PyramidCharacter.point1 * 3 + desired1.p) / 4
  8481. local point2 = (PyramidCharacter.point2 * 3 + desired2.p) / 4
  8482. local point3 = (PyramidCharacter.point3 * 3 + desired3.p) / 4
  8483. local point4 = (PyramidCharacter.point4 * 3 + desired4.p) / 4
  8484. PyramidCharacter.point1 = point1
  8485. PyramidCharacter.point2 = point2
  8486. PyramidCharacter.point3 = point3
  8487. PyramidCharacter.point4 = point4
  8488. local head_properties = PyramidCharacter.head_properties
  8489. PyramidCharacter.CreateTriangle(point1, point2, point3, head_properties, frame, 1).Archivable = false
  8490. PyramidCharacter.CreateTriangle(point2, point3, point4, head_properties, frame, 2).Archivable = false
  8491. PyramidCharacter.CreateTriangle(point3, point4, point1, head_properties, frame, 3).Archivable = false
  8492. PyramidCharacter.CreateTriangle(point4, point1, point2, head_properties, frame, 4).Archivable = false
  8493. core.CFrame = CFrame.new((point1 + point2 + point3 + point4) / 4) * CFrame.Angles(total_time * math.tau, total_time * math.tau / 2,
  8494.  
  8495. total_time * math.tau / 3)
  8496. PyramidCharacter.center = center
  8497. else
  8498. if core.Parent then
  8499. core:Destroy()
  8500. end
  8501. if frame and frame.Parent then
  8502. frame:Destroy()
  8503. end
  8504. PyramidCharacter.frame = nil
  8505. end
  8506. end
  8507. function PyramidCharacter.MainLoop()
  8508. PyramidCharacter.Animate()
  8509. RunService.Stepped:wait()
  8510. end
  8511. TaskScheduler.Start(function()
  8512. while true do
  8513. PyramidCharacter.MainLoop()
  8514. end
  8515. end)
  8516.  
  8517. RBXInstance = {};
  8518.  
  8519. RBXInstance.init_metatable = {}
  8520. function RBXInstance.init_metatable:__call(data)
  8521. local instance = Instance.new(self[1])
  8522. for key, value in pairs(data) do
  8523. if type(key) == "number" then
  8524. value.Parent = instance
  8525. else
  8526. instance[key] = value
  8527. end
  8528. end
  8529. return instance
  8530. end
  8531. function RBXInstance.new(className)
  8532. return setmetatable({className}, RBXInstance.init_metatable)
  8533. end
  8534.  
  8535. Utility = {};
  8536.  
  8537. function Utility.CleanLighting()
  8538. Lighting.Ambient = Color3.new(0, 0, 0)
  8539. Lighting.Brightness = 1
  8540. Lighting.ColorShift_Bottom = Color3.new(0, 0, 0)
  8541. Lighting.ColorShift_Top = Color3.new(0, 0, 0)
  8542. Lighting.FogColor = Color3.new(0.75294125080109, 0.75294125080109, 0.75294125080109)
  8543. Lighting.FogEnd = 100000
  8544. Lighting.FogStart = 0
  8545. Lighting.GeographicLatitude = 41.733299255371095
  8546. Lighting.GlobalShadows = true
  8547. Lighting.OutdoorAmbient = Color3.new(0.5, 0.5, 0.5)
  8548. Lighting.Outlines = false
  8549. Lighting.ShadowColor = Color3.new(0.70196080207825, 0.70196080207825, 0.72156864404678)
  8550. Lighting.TimeOfDay = "14:00:00"
  8551. for index, child in ipairs(Lighting:GetChildren()) do
  8552. if child:IsA("Sky") then
  8553. child:Destroy()
  8554. end
  8555. end
  8556. end
  8557.  
  8558. function Utility.GetProperty(object, field)
  8559. return object[field]
  8560. end
  8561.  
  8562. function Utility.CaseInsensitivePattern(pattern)
  8563. return string.gsub(pattern, "(%%?)(.)", Utility.CaseInsensitivePatternReplaceFunc)
  8564. end
  8565. function Utility.CaseInsensitivePatternReplaceFunc(percent, letter)
  8566. if percent ~= "" or not letter:match("%a") then
  8567. return percent .. letter
  8568. else
  8569. return "[" .. string.lower(letter) .. string.upper(letter) .. "]"
  8570. end
  8571. end
  8572. function Utility.FindHumanoidClosestToRay(ray, exlusionList)
  8573. local view = CFrame.new(ray.Origin, ray.Origin + ray.Direction)
  8574. local inverseView = view:inverse()
  8575. local objects = Workspace:GetChildren()
  8576. local numObjects = #objects
  8577. local minDistance = math.huge
  8578. local closestHumanoid, closestTorso, closestTorsoPosition
  8579. for index, object in ipairs(objects) do
  8580. for index, child in ipairs(object:GetChildren()) do
  8581. numObjects = numObjects + 1
  8582. objects[numObjects] = child
  8583. end
  8584. if object.ClassName == "Humanoid" and object.Health > 0 then
  8585. local torso = object.Torso
  8586. if torso and not (exlusionList and exlusionList[torso]) then
  8587. local torsoPosition = torso.Position
  8588. local relativePosition = inverseView * torsoPosition
  8589. local distanceZ = -relativePosition.Z
  8590. if distanceZ > 0 then
  8591. local distance = (inverseView * torsoPosition * Vector3.new(1, 1, 0)).magnitude / distanceZ
  8592. if distance < 0.25 and distance < minDistance then
  8593. closestHumanoid = object
  8594. closestTorso = torso
  8595. closestTorsoPosition = torsoPosition
  8596. minDistance = distance
  8597. end
  8598. end
  8599. end
  8600. end
  8601. end
  8602. return closestHumanoid, closestTorso, closestTorsoPosition, minDistance
  8603. end
  8604. function Utility.FindLocalHead()
  8605. if Player then
  8606. local head, position, view
  8607. pcall(function()
  8608. position = Camera.Focus.p
  8609. view = Camera.CoordinateFrame
  8610. end)
  8611. pcall(function()
  8612. for _, child in ipairs(Workspace:GetChildren()) do
  8613. if Players:GetPlayerFromCharacter(child) == Player then
  8614. for _, child in ipairs(child:GetChildren()) do
  8615. if tostring(child) == "Head" and pcall(assert, pcall(Game.IsA, child, "BasePart")) then
  8616. head = child
  8617. break
  8618. end
  8619. end
  8620. break
  8621. end
  8622. end
  8623. if not head and view then
  8624. local min_distance = math.huge
  8625. local objects = Workspace:GetChildren()
  8626. for _, object in ipairs(objects) do
  8627. local success, is_part = pcall(Game.IsA, object, "BasePart")
  8628. if success and is_part then
  8629. pcall(function()
  8630. local distance = (view:pointToObjectSpace(object.Position) * Vector3.new(1, 1, 0)).magnitude
  8631. if distance < min_distance and distance < 1 then
  8632. min_distance = distance
  8633. head = object
  8634. elseif tostring(object) == "Head" and tostring(object.Parent):lower():match("^" .. tostring(Player):lower()) then
  8635. min_distance = 0
  8636. head = object
  8637. end
  8638. end)
  8639. if min_distance < 5e-4 then
  8640. break
  8641. end
  8642. end
  8643. pcall(function()
  8644. if not object:IsA("Camera") then
  8645. for _, child in ipairs(object:GetChildren()) do
  8646. objects[#objects + 1] = child
  8647. end
  8648. end
  8649. end)
  8650. end
  8651. end
  8652. end)
  8653. return head, position, view
  8654. end
  8655. end
  8656. function Utility.GetBuildingTools()
  8657. local backpack = Player:FindFirstChild("Backpack")
  8658. if backpack then
  8659. local moveTool = Instance.new("HopperBin")
  8660. local cloneTool = Instance.new("HopperBin")
  8661. local deleteTool = Instance.new("HopperBin")
  8662. moveTool.BinType = Enum.BinType.GameTool
  8663. cloneTool.BinType = Enum.BinType.Clone
  8664. deleteTool.BinType = Enum.BinType.Hammer
  8665. moveTool.Parent = backpack
  8666. cloneTool.Parent = backpack
  8667. deleteTool.Parent = backpack
  8668. end
  8669. end
  8670. function Utility.Rejoin()
  8671. Workspace.Parent:service'TeleportService':Teleport(Game.PlaceId)
  8672. end
  8673.  
  8674. function Utility.BlockRobloxFilter(text)
  8675. return string.gsub(text, ".", "%1\143")
  8676. end
  8677.  
  8678. function Utility.GetTimestamp()
  8679. local unix_time = tick()
  8680. local time_secs = math.floor(unix_time % 60)
  8681. local time_mins = math.floor(unix_time / 60 % 60)
  8682. local time_hours = math.floor(unix_time / 3600 % 24)
  8683. return string.format("%02i:%02i:%02i", time_hours, time_mins, time_secs)
  8684. end
  8685.  
  8686. function Utility.GetRainbowRGB(hue)
  8687. local section = hue % 1 * 3
  8688. local secondary = 0.5 * math.pi * (section % 1)
  8689. if section < 1 then
  8690. return 1, 1 - math.cos(secondary), 1 - math.sin(secondary)
  8691. elseif section < 2 then
  8692. return 1 - math.sin(secondary), 1, 1 - math.cos(secondary)
  8693. else
  8694. return 1 - math.cos(secondary), 1 - math.sin(secondary), 1
  8695. end
  8696. end
  8697.  
  8698. function Utility.SetProperty(object, field, value)
  8699. object[field] = value
  8700. end
  8701.  
  8702. function Utility.CleanWorkspace()
  8703. for index, child in ipairs(Workspace:GetChildren()) do
  8704. if not (Players:GetPlayerFromCharacter(child) or child.ClassName == "Camera" or child:IsA("Script") or child.ClassName == "Terrain") then
  8705. pcall(child.Destroy, child)
  8706. end
  8707. end
  8708. Workspace.Terrain:Clear()
  8709. local base = Instance.new("Part")
  8710. base.Anchored = true
  8711. base.BrickColor = BrickColor.new("Earth green")
  8712. base.Locked = true
  8713. base.Name = "Base"
  8714. base.Size = Vector3.new(512, 1.2, 512)
  8715. base.Parent = Workspace
  8716. end
  8717.  
  8718. function Utility.CleanWorkspaceAndScripts()
  8719. for index, child in ipairs(Workspace:GetChildren()) do
  8720. if not (Players:GetPlayerFromCharacter(child) or child.ClassName == "Camera" or child.ClassName == "Terrain") then
  8721. pcall(child.Destroy, child)
  8722. end
  8723. end
  8724. Workspace.Terrain:Clear()
  8725. local base = Instance.new("Part")
  8726. base.Anchored = true
  8727. base.BrickColor = BrickColor.new("Earth green")
  8728. base.Locked = true
  8729. base.Name = "Base"
  8730. base.Size = Vector3.new(512, 1.2, 512)
  8731. base.Parent = Workspace
  8732. end
  8733.  
  8734. function Utility.CreateDummy(cframe, name, parent)
  8735. local model = Instance.new("Model")
  8736. model.Archivable = false
  8737. model.Name = name
  8738. local humanoid = Instance.new("Humanoid", model)
  8739. local head = Instance.new("Part", model)
  8740. local face = Instance.new("Decal", head)
  8741. local head_mesh = Instance.new("SpecialMesh", head)
  8742. local torso = Instance.new("Part", model)
  8743. local right_arm = Instance.new("Part", model)
  8744. local left_arm = Instance.new("Part", model)
  8745. local right_leg = Instance.new("Part", model)
  8746. local left_leg = Instance.new("Part", model)
  8747. local neck = Instance.new("Motor", torso)
  8748. local right_shoulder = Instance.new("Motor", torso)
  8749. local left_shoulder = Instance.new("Motor", torso)
  8750. local right_hip = Instance.new("Motor", torso)
  8751. local left_hip = Instance.new("Motor", torso)
  8752. head.BrickColor = BrickColor.Yellow()
  8753. head.CFrame = cframe * CFrame.new(0, 1.5, 0)
  8754. head.FormFactor = "Symmetric"
  8755. head.Locked = true
  8756. head.Name = "Head"
  8757. head.Size = Vector3.new(2, 1, 1)
  8758. head.TopSurface = "Smooth"
  8759. face.Texture = "rbxasset://textures/face.png"
  8760. head_mesh.Scale = Vector3.new(1.25, 1.25, 1.25)
  8761. torso.BrickColor = BrickColor.Blue()
  8762. torso.CFrame = cframe
  8763. torso.FormFactor = "Symmetric"
  8764. torso.LeftSurface = "Weld"
  8765. torso.Locked = true
  8766. torso.RightSurface = "Weld"
  8767. torso.Name = "Torso"
  8768. torso.Size = Vector3.new(2, 2, 1)
  8769. right_arm.BrickColor = BrickColor.Yellow()
  8770. right_arm.CanCollide = false
  8771. right_arm.CFrame = cframe * CFrame.new(1.5, 0, 0)
  8772. right_arm.FormFactor = "Symmetric"
  8773. right_arm.Locked = true
  8774. right_arm.Name = "Right Arm"
  8775. right_arm.Size = Vector3.new(1, 2, 1)
  8776. left_arm.BrickColor = BrickColor.Yellow()
  8777. left_arm.CanCollide = false
  8778. left_arm.CFrame = cframe * CFrame.new(-1.5, 0, 0)
  8779. left_arm.FormFactor = "Symmetric"
  8780. left_arm.Locked = true
  8781. left_arm.Name = "Left Arm"
  8782. left_arm.Size = Vector3.new(1, 2, 1)
  8783. right_leg.BrickColor = BrickColor.new("Br. yellowish green")
  8784. right_leg.BottomSurface = "Smooth"
  8785. right_leg.CanCollide = false
  8786. right_leg.CFrame = cframe * CFrame.new(0.5, -2, 0)
  8787. right_leg.FormFactor = "Symmetric"
  8788. right_leg.Locked = true
  8789. right_leg.Name = "Right Leg"
  8790. right_leg.Size = Vector3.new(1, 2, 1)
  8791. right_leg.TopSurface = "Smooth"
  8792. left_leg.BrickColor = BrickColor.new("Br. yellowish green")
  8793. left_leg.BottomSurface = "Smooth"
  8794. left_leg.CanCollide = false
  8795. left_leg.CFrame = cframe * CFrame.new(-0.5, -2, 0)
  8796. left_leg.FormFactor = "Symmetric"
  8797. left_leg.Locked = true
  8798. left_leg.Name = "Left Leg"
  8799. left_leg.Size = Vector3.new(1, 2, 1)
  8800. left_leg.TopSurface = "Smooth"
  8801. neck.C0 = CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  8802. neck.C1 = CFrame.new(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  8803. neck.Name = "Neck"
  8804. neck.Part0 = torso
  8805. neck.Part1 = head
  8806. right_shoulder.C0 = CFrame.new(1, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  8807. right_shoulder.C1 = CFrame.new(-0.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  8808. right_shoulder.MaxVelocity = 0.15
  8809. right_shoulder.Name = "Right Shoulder"
  8810. right_shoulder.Part0 = torso
  8811. right_shoulder.Part1 = right_arm
  8812. left_shoulder.C0 = CFrame.new(-1, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  8813. left_shoulder.C1 = CFrame.new(0.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  8814. left_shoulder.MaxVelocity = 0.15
  8815. left_shoulder.Name = "Left Shoulder"
  8816. left_shoulder.Part0 = torso
  8817. left_shoulder.Part1 = left_arm
  8818. right_hip.C0 = CFrame.new(1, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  8819. right_hip.C1 = CFrame.new(0.5, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  8820. right_hip.MaxVelocity = 0.1
  8821. right_hip.Name = "Right Hip"
  8822. right_hip.Part0 = torso
  8823. right_hip.Part1 = right_leg
  8824. left_hip.C0 = CFrame.new(-1, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  8825. left_hip.C1 = CFrame.new(-0.5, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  8826. left_hip.MaxVelocity = 0.1
  8827. left_hip.Name = "Left Hip"
  8828. left_hip.Part0 = torso
  8829. left_hip.Part1 = left_leg
  8830. humanoid.Died:connect(function()
  8831. wait(5)
  8832. model:Destroy()
  8833. end)
  8834. model.Parent = parent
  8835. return model
  8836. end
  8837.  
  8838. Serializer = {};
  8839.  
  8840. Serializer.NAN = math.abs(0 / 0)
  8841.  
  8842. function Serializer.DecodeFloatArray(metadata_size, lookup, data, index)
  8843. local metadata_bytes = math.ceil(metadata_size * 0.25)
  8844. local metadata = {string.byte(data, index, index + metadata_bytes - 1)}
  8845. local components = {}
  8846. local start_index = index
  8847. index = index + metadata_bytes
  8848. for byte_index, byte in ipairs(metadata) do
  8849. local last_offset = 3
  8850. if byte_index == metadata_bytes then
  8851. last_offset = (metadata_size - 1) % 4
  8852. end
  8853. for value_offset = 0, last_offset do
  8854. local value_code = byte * 0.25 ^ value_offset % 4
  8855. value_code = value_code - value_code % 1
  8856. if value_code == 0 then
  8857. table.insert(components, Serializer.DecodeFloat32(string.byte(data, index, index + 3)))
  8858. index = index + 4
  8859. else
  8860. table.insert(components, lookup[value_code])
  8861. end
  8862. end
  8863. end
  8864. return components, index - start_index
  8865. end
  8866. function Serializer.EncodeFloatArray(values, common)
  8867. local lookup = {[common[1]] = 1, [common[2]] = 2, [common[3]] = 3}
  8868. local value_count = #values
  8869. local metadata_bytes = math.ceil(value_count * 0.25)
  8870. local metadata = {}
  8871. local buffer = {}
  8872. for byte_index = 1, metadata_bytes do
  8873. local last_offset = 3
  8874. if byte_index == metadata_bytes then
  8875. last_offset = (value_count - 1) % 4
  8876. end
  8877. local metadata_byte = 0
  8878. local offset_multiplier = 1
  8879. local byte_offset = (byte_index - 1) * 4 + 1
  8880. for value_offset = 0, last_offset do
  8881. local value_index = byte_offset + value_offset
  8882. local value = values[value_index]
  8883. local code = lookup[value] or 0
  8884. metadata_byte = metadata_byte + code * offset_multiplier
  8885. offset_multiplier = offset_multiplier * 4
  8886. if code == 0 then
  8887. table.insert(buffer, Serializer.EncodeFloat32(value))
  8888. end
  8889. end
  8890. metadata[byte_index] = string.char(metadata_byte)
  8891. end
  8892. return table.concat(metadata) .. table.concat(buffer)
  8893. end
  8894.  
  8895. function Serializer.DecodeColor3(data, index)
  8896. local components, size = Serializer.DecodeFloatArray(3, {0, 0.5, 1}, data, index)
  8897. return Color3.new(unpack(components)), size
  8898. end
  8899. function Serializer.DecodeFloat32(b0, b1, b2, b3)
  8900. local b2_low = b2 % 128
  8901. local mantissa = b0 + (b1 + b2_low * 256) * 256
  8902. local exponent = (b2 - b2_low) / 128 + b3 % 128 * 2
  8903. local number
  8904. if mantissa == 0 then
  8905. if exponent == 0 then
  8906. number = 0
  8907. elseif exponent == 0xFF then
  8908. number = math.huge
  8909. else
  8910. number = 2 ^ (exponent - 127)
  8911. end
  8912. elseif exponent == 255 then
  8913. number = Serializer.NAN
  8914. else
  8915. number = (1 + mantissa / 8388608) * 2 ^ (exponent - 127)
  8916. end
  8917. if b3 >= 128 then
  8918. return -number
  8919. else
  8920. return number
  8921. end
  8922. end
  8923. function Serializer.EncodeColor3(color3)
  8924. return Serializer.EncodeFloatArray({color3.r, color3.g, color3.b}, {0, 0.5, 1})
  8925. end
  8926. function Serializer.EncodeFloat32(number)
  8927. if number == 0 then
  8928. if 1 / number > 0 then
  8929. return "\0\0\0\0"
  8930. else
  8931. return "\0\0\0\128"
  8932. end
  8933. elseif number ~= number then
  8934. if string.sub(tostring(number), 1, 1) == "-" then
  8935. return "\255\255\255\255"
  8936. else
  8937. return "\255\255\255\127"
  8938. end
  8939. elseif number == math.huge then
  8940. return "\0\0\128\127"
  8941. elseif number == -math.huge then
  8942. return "\0\0\128\255"
  8943. else
  8944. local b3 = 0
  8945. if number < 0 then
  8946. number = -number
  8947. b3 = 128
  8948. end
  8949. local mantissa, exponent = math.frexp(number)
  8950. exponent = exponent + 126
  8951. if exponent < 0 then
  8952. return "\0\0\0" .. string.char(b3)
  8953. elseif exponent >= 255 then
  8954. return "\0\0\128" .. string.char(b3 + 0x7F)
  8955. else
  8956. local fraction = mantissa * 16777216 - 8388608 + 0.5
  8957. fraction = fraction - fraction % 1
  8958. local exponent_low = exponent % 2
  8959. local b0 = fraction % 256
  8960. local b1 = fraction % 65536
  8961. local b2 = (fraction - b1) / 65536 + exponent_low * 128
  8962. b1 = (b1 - b0) / 256
  8963. b3 = b3 + (exponent - exponent_low) / 2
  8964. return string.char(b0, b1, b2, b3)
  8965. end
  8966. end
  8967. end
  8968.  
  8969. LuaEnum = {};
  8970.  
  8971. LuaEnum.enum_metatable = {
  8972. __call = function(self, value)
  8973. local valueType = type(value)
  8974. if valueType == "table" and getmetatable(value) == LuaEnum.enum_item_metatable then
  8975. return value
  8976. else
  8977. return self[value]
  8978. end
  8979. end,
  8980. __index = function(self, key)
  8981. local enumItem = self.ItemsByName[key] or self.ItemsByValue[key]
  8982. if enumItem == nil then
  8983. local default = self.Default
  8984. if default then
  8985. Logger.printf("Warning", "%s is not a valid EnumItem, returning default (%s)", Utility.ToString(key), tostring(default))
  8986. enumItem = default
  8987. else
  8988. Logger.errorf(2, "%s is not a valid EnumItem", Utility.ToString(key))
  8989. end
  8990. end
  8991. return enumItem
  8992. end,
  8993. __tostring = function(self)
  8994. return self.Name
  8995. end
  8996. }
  8997. LuaEnum.enum_item_metatable = {
  8998. __tostring = function(self)
  8999. return self.Enum.Name .. "." .. self.Name
  9000. end
  9001. }
  9002. LuaEnum.init_metatable = {
  9003. __call = function(self, items)
  9004. local enumItemsByName = {}
  9005. local enumItemsByValue = {}
  9006. local enum = {
  9007. ItemsByName = enumItemsByName,
  9008. ItemsByValue = enumItemsByValue,
  9009. Name = self[1]
  9010. }
  9011. local default = items.Default
  9012. if default ~= nil then
  9013. items.Default = nil
  9014. end
  9015. for value, name in pairs(items) do
  9016. local enumItem = setmetatable({
  9017. Enum = enum,
  9018. Name = name,
  9019. Value = value
  9020. }, LuaEnum.enum_item_metatable)
  9021. enumItemsByName[name] = enumItem
  9022. enumItemsByValue[value] = enumItem
  9023. if name == default or value == default then
  9024. enum.Default = enumItem
  9025. end
  9026. end
  9027. return setmetatable(enum, LuaEnum.enum_metatable)
  9028. end
  9029. }
  9030. function LuaEnum.new(name)
  9031. return setmetatable({name}, LuaEnum.init_metatable)
  9032. end
  9033.  
  9034. Logger = {};
  9035.  
  9036. Logger.entries = {0}
  9037. Logger.MessageType = LuaEnum.new "MessageType" {
  9038. "Output",
  9039. "Info",
  9040. "Warning",
  9041. "Severe",
  9042. "Error",
  9043. Default = "Severe"
  9044. }
  9045. Logger.MESSAGE_TYPE_SETTINGS = {
  9046. { -- Output
  9047. Font = "Arial",
  9048. TextColor3 = Color3.new(0, 0, 0)
  9049. },
  9050. { -- Info
  9051. Font = "Arial",
  9052. TextColor3 = Color3.new(0, 0, 1)
  9053. },
  9054. { -- Warning
  9055. Font = "ArialBold",
  9056. TextColor3 = Color3.new(1, 0.5, 0)
  9057. },
  9058. { -- Severe/Error
  9059. Font = "ArialBold",
  9060. TextColor3 = Color3.new(1, 0, 0)
  9061. }
  9062. }
  9063. Logger.MAX_ENTRIES = 160
  9064. Logger.WARNING_TRACE_ITEM_COUNT = 5
  9065. Logger.rbxPrint = getfenv(RbxUtility.CreateSignal).print
  9066. function Logger.error(level, message)
  9067. message = message .. "\n" .. Logger.StackTraceToString(Logger.GenerateStackTrace(level + 1))
  9068. Logger.AddEntry {Logger.MessageType.Error, message}
  9069. error(level + 1, message)
  9070. end
  9071. function Logger.errorf(level, messageFormat, ...)
  9072. Logger.error(level + 1, string.format(messageFormat, ...))
  9073. end
  9074. function Logger.print(messageType, message, level)
  9075. messageType = Logger.MessageType(messageType)
  9076. local entry = {messageType, message}
  9077. Logger.rbxPrint(Logger.EntryToString(entry))
  9078. Logger.AddEntry(entry)
  9079. if level ~= false and messageType.Value >= Logger.MessageType.Warning.Value then
  9080. local maxItems
  9081. if messageType.Value >= Logger.MessageType.Severe.Value then
  9082. maxItems = math.huge
  9083. else
  9084. maxItems = Logger.WARNING_TRACE_ITEM_COUNT
  9085. end
  9086. local trace = Logger.GenerateStackTrace((level or 1) + 1, math.huge, 10, maxItems + 1)
  9087. local traceLength = #trace
  9088. local stackTraceMessage
  9089. local suffix = ""
  9090. if traceLength > maxItems then
  9091. trace[traceLength] = nil
  9092. suffix = "\n..."
  9093. end
  9094. Logger.print("Info", "Stack trace:\n" .. Logger.StackTraceToString(trace) .. suffix .. "\nStack end", false)
  9095. end
  9096. end
  9097. function Logger.printf(messageType, messageFormat, ...)
  9098. Logger.print(messageType, string.format(messageFormat, ...), 2)
  9099. end
  9100. function Logger.AddEntry(entry)
  9101. local entries = Logger.entries
  9102. if entries[1] >= Logger.MAX_ENTRIES then
  9103. local first = entries[2]
  9104. local nextFirst = first[2]
  9105. first[1] = nil
  9106. first[2] = nil
  9107. entries[1] = entries[1] - 1
  9108. entries[2] = nextFirst
  9109. if not nextFirst then
  9110. entries[3] = nil
  9111. end
  9112. end
  9113. local last = entries[3]
  9114. local node = {entry}
  9115. if last then
  9116. entries[3] = node
  9117. last[2] = node
  9118. else
  9119. entries[2] = node
  9120. entries[3] = node
  9121. end
  9122. entries[1] = entries[1] + 1
  9123. end
  9124. function Logger.NodeIterator(list, node)
  9125. if node then
  9126. node = node[2]
  9127. else
  9128. node = list[2]
  9129. end
  9130. if node then
  9131. return node, node[1]
  9132. end
  9133. end
  9134. function Logger.EntryToString(entry)
  9135. local messageType, message = entry[1], tostring(entry[2])
  9136. if messageType and messageType.Value >= Logger.MessageType.Info.Value then
  9137. return messageType.Name .. ": " .. message
  9138. else
  9139. return message
  9140. end
  9141. end
  9142. function Logger.GenerateStackTrace(level, maxLevel, maxTailCalls, maxTraceItems)
  9143. level = level + 2
  9144. if maxLevel == nil then
  9145. maxLevel = math.huge
  9146. else
  9147. maxLevel = maxLevel + 2
  9148. end
  9149. maxTailCalls = maxTailCalls or 10
  9150. maxTraceItems = maxTraceItems or math.huge
  9151. local trace = {}
  9152. local numTailCalls = 0
  9153. while level <= maxLevel and numTailCalls <= maxTailCalls and #trace < maxTraceItems do
  9154. local success, errorMessage = xpcall(function() error("-", level + 1) end, function(...) return ... end)
  9155. if errorMessage == "-" then
  9156. numTailCalls = numTailCalls + 1
  9157. else
  9158. if numTailCalls > 0 then
  9159. local traceSize = #trace
  9160. if traceSize > 0 then
  9161. trace[#trace][3] = numTailCalls
  9162. end
  9163. numTailCalls = 0
  9164. end
  9165. local script, line = string.match(errorMessage, "(.*):(%d+)")
  9166. trace[#trace + 1] = {script, tonumber(line), 0}
  9167. end
  9168. level = level + 1
  9169. end
  9170. return trace
  9171. end
  9172. function Logger.StackTraceToString(trace)
  9173. local buffer = {}
  9174. for _, data in ipairs(trace) do
  9175. buffer[#buffer + 1] = string.format("Script %q, line %d", data[1], data[2])
  9176. local numTailCalls = data[3]
  9177. if numTailCalls == 1 then
  9178. buffer[#buffer + 1] = "... 1 tail call"
  9179. elseif numTailCalls > 1 then
  9180. buffer[#buffer + 1] = string.format("... %d tail calls", numTailCalls)
  9181. end
  9182. end
  9183. return table.concat(buffer, "\n")
  9184. end
  9185. function Logger.MessageOutFunc(message, messageType)
  9186. if AdvancedGUI and AdvancedGUI.Print then
  9187. local messageTypeValue
  9188. if messageType == Enum.MessageType.MessageOutput then
  9189. local tagName, untaggedMessage = string.match(message, "(%a+): (.*)")
  9190. if tagName == "Info" or tagName == "Warning" or tagName == "Severe" then
  9191. messageTypeValue = Logger.MessageType[tagName].Value
  9192. message = untaggedMessage
  9193. else
  9194. messageTypeValue = Logger.MessageType.Output.Value
  9195. end
  9196. else
  9197. messageTypeValue = messageType.Value + 1
  9198. end
  9199. AdvancedGUI.PrintFormat(Logger.MESSAGE_TYPE_SETTINGS[messageTypeValue], message)
  9200. end
  9201. end
  9202. function print(...)
  9203. local args = {...}
  9204. local buffer = {}
  9205. for index = 1, select("#", ...) do
  9206. buffer[index] = tostring(args[index])
  9207. end
  9208. local message = table.concat(buffer, "\t")
  9209. Logger.print("Output", message)
  9210. end
  9211.  
  9212. CharacterAppearance = {};
  9213.  
  9214. CharacterAppearance.defaultAppearanceId = 2
  9215. CharacterAppearance.stock = {}
  9216. function CharacterAppearance.Create(properties)
  9217. local id = properties.Id
  9218. local bodyColors = Instance.new("BodyColors")
  9219. bodyColors.HeadColor = properties.HeadColor
  9220. bodyColors.TorsoColor = properties.TorsoColor
  9221. bodyColors.RightArmColor = properties.RightArmColor
  9222. bodyColors.LeftArmColor = properties.LeftArmColor
  9223. bodyColors.RightLegColor = properties.RightLegColor
  9224. bodyColors.LeftLegColor = properties.LeftLegColor
  9225. local characterObjects = {bodyColors}
  9226. local headObjects = {}
  9227. local data = {
  9228. characterObjects = characterObjects,
  9229. headObjects = headObjects,
  9230. tshirt = properties.TShirt
  9231. }
  9232. for _, assetId in ipairs(properties.CharacterAssets) do
  9233. TaskScheduler.Start(CharacterAppearance.LoadAsset, characterObjects, assetId)
  9234. end
  9235. for _, assetId in ipairs(properties.HeadAssets) do
  9236. TaskScheduler.Start(CharacterAppearance.LoadAsset, headObjects, assetId)
  9237. end
  9238. CharacterAppearance.stock[id] = data
  9239. end
  9240. function CharacterAppearance.GetDefaultAppearance()
  9241. return CharacterAppearance.stock[CharacterAppearance.defaultAppearanceId]
  9242. end
  9243. function CharacterAppearance.LoadAsset(objects, assetId)
  9244. local asset = InsertService:LoadAsset(assetId)
  9245. for _, child in ipairs(asset:GetChildren()) do
  9246. child.Archivable = true
  9247. table.insert(objects, child:Clone())
  9248. end
  9249. end
  9250. CharacterAppearance.Create {
  9251. Id = 1,
  9252. HeadColor = BrickColor.new("Institutional white"),
  9253. TorsoColor = BrickColor.new("Institutional white"),
  9254. RightArmColor = BrickColor.new("Institutional white"),
  9255. LeftArmColor = BrickColor.new("Institutional white"),
  9256. RightLegColor = BrickColor.new("Institutional white"),
  9257. LeftLegColor = BrickColor.new("Institutional white"),
  9258. CharacterAssets = {
  9259. 90825058, 90825211,
  9260. 27112056, 27112052,
  9261. 27112039, 27112025,
  9262. 27112068, 38322996
  9263. },
  9264. HeadAssets = {
  9265. 20722130,
  9266. 8330576
  9267. }
  9268. }
  9269. CharacterAppearance.Create {
  9270. Id = 2,
  9271. HeadColor = BrickColor.new("Institutional white"),
  9272. TorsoColor = BrickColor.new("Institutional white"),
  9273. RightArmColor = BrickColor.new("Institutional white"),
  9274. LeftArmColor = BrickColor.new("Institutional white"),
  9275. RightLegColor = BrickColor.new("Institutional white"),
  9276. LeftLegColor = BrickColor.new("Institutional white"),
  9277. CharacterAssets = {
  9278. 90825058, 90825211,
  9279. 11748356, 1029025,
  9280. 1235488, 27112056,
  9281. 27112052, 27112039,
  9282. 27112025, 27112068
  9283. },
  9284. HeadAssets = {
  9285. 20722130
  9286. }
  9287. }
  9288. CharacterAppearance.Create {
  9289. Id = 3,
  9290. HeadColor = BrickColor.new("Pastel brown"),
  9291. TorsoColor = BrickColor.new("Pastel brown"),
  9292. RightArmColor = BrickColor.new("Pastel brown"),
  9293. LeftArmColor = BrickColor.new("Pastel brown"),
  9294. RightLegColor = BrickColor.new("White"),
  9295. LeftLegColor = BrickColor.new("White"),
  9296. CharacterAssets = {
  9297. 134289125, 48474356,
  9298. 100339040, 46302558,
  9299. 153955895
  9300. },
  9301. HeadAssets = {},
  9302. TShirt = "rbxassetid://148856353"
  9303. }
  9304. CharacterAppearance.Create {
  9305. Id = 4,
  9306. HeadColor = BrickColor.new("Pastel brown"),
  9307. TorsoColor = BrickColor.new("Pastel brown"),
  9308. RightArmColor = BrickColor.new("Pastel brown"),
  9309. LeftArmColor = BrickColor.new("Pastel brown"),
  9310. RightLegColor = BrickColor.new("White"),
  9311. LeftLegColor = BrickColor.new("White"),
  9312. CharacterAssets = {
  9313. 129458426, 96678344, 184489190
  9314. },
  9315. HeadAssets = {},
  9316. TShirt = "rbxassetid://160146697"
  9317. }
  9318.  
  9319. GraphicalEffects = {};
  9320.  
  9321. local MESH_IDS = {"rbxassetid://15310891"}
  9322. local SOUND_IDS = {"rbxassetid://2248511", "rbxassetid://1369158"}
  9323. local TEXTURE_IDS = {"rbxassetid://36527089", "rbxassetid://122610943", "rbxassetid://126561317", "rbxassetid://127033719"}
  9324. local preloadConnections = {}
  9325. local reloadingPreloads = false
  9326. function GraphicalEffects.InitPreloads()
  9327. local preload_part = Instance.new("Part")
  9328. GraphicalEffects.preload_part = preload_part
  9329. preload_part.Anchored = true
  9330. preload_part.Archivable = false
  9331. preload_part.BottomSurface = "Smooth"
  9332. preload_part.CanCollide = false
  9333. preload_part.CFrame = CFrame.new(math.huge, math.huge, math.huge)
  9334. preload_part.FormFactor = "Custom"
  9335. preload_part.Locked = true
  9336. preload_part.Name = "Asset Preloader"
  9337. preload_part.Size = Vector3.new(0.2, 0.2, 0.2)
  9338. preload_part.TopSurface = "Smooth"
  9339. preload_part.Transparency = 1
  9340. preloadConnections[preload_part] = preload_part.AncestryChanged:connect(GraphicalEffects.PreloadsAncestryChanged)
  9341. for _, mesh_id in ipairs(MESH_IDS) do
  9342. local mesh = Instance.new("SpecialMesh")
  9343. mesh.MeshType = "FileMesh"
  9344. mesh.MeshId = mesh_id
  9345. preloadConnections[mesh] = mesh.AncestryChanged:connect(GraphicalEffects.PreloadsAncestryChanged)
  9346. mesh.Parent = preload_part
  9347. end
  9348. for _, sound_id in ipairs(SOUND_IDS) do
  9349. local sound = Instance.new("Sound")
  9350. sound.SoundId = sound_id
  9351. sound.Volume = 0
  9352. preloadConnections[sound] = sound.AncestryChanged:connect(GraphicalEffects.PreloadsAncestryChanged)
  9353. sound.Parent = preload_part
  9354. end
  9355. for _, texture_id in ipairs(TEXTURE_IDS) do
  9356. local decal = Instance.new("Decal")
  9357. decal.Texture = texture_id
  9358. preloadConnections[decal] = decal.AncestryChanged:connect(GraphicalEffects.PreloadsAncestryChanged)
  9359. decal.Parent = preload_part
  9360. end
  9361. preload_part.Parent = Workspace
  9362. end
  9363. function GraphicalEffects.PreloadsAncestryChanged(child, parent)
  9364. if not reloadingPreloads and parent ~= GraphicalEffects.preload_part and parent ~= Workspace then
  9365. reloadingPreloads = true
  9366. for _, connection in pairs(preloadConnections) do
  9367. connection:disconnect()
  9368. preloadConnections[_] = nil
  9369. end
  9370. wait(1)
  9371. reloadingPreloads = false
  9372. GraphicalEffects.InitPreloads()
  9373. end
  9374. end
  9375. GraphicalEffects.InitPreloads()
  9376. -- Hyper beam
  9377. function GraphicalEffects.FireSpaceHyperBeam(target, power, duration, radius, height, deviation)
  9378. local stepTime, gameTime = 1 / 30, TaskScheduler.GetCurrentTime()
  9379. local frames = duration * 30
  9380. local beamColorOffset = 0.75 * tick() -- math.random()
  9381. local blastPressure = power * 62500 + 250000
  9382. local beamPart = Instance.new("Part")
  9383. local beamMesh = Instance.new("SpecialMesh", beamPart)
  9384. local explosion = Instance.new("Explosion")
  9385. local sound = Instance.new("Sound", beamPart)
  9386. beamPart.Anchored = true
  9387. beamPart.CanCollide = false
  9388. beamPart.CFrame = CFrame.new(target, target + Vector3.new(deviation * (math.random() - 0.5), deviation * (math.random() - 0.5), height))
  9389. beamPart.FormFactor = "Custom"
  9390. beamPart.Locked = true
  9391. beamPart.Size = Vector3.new(0.2, 0.2, 0.2)
  9392. beamMesh.MeshId = "rbxassetid://15310891"
  9393. beamMesh.MeshType = "FileMesh"
  9394. beamMesh.TextureId = "rbxassetid://36527089"
  9395. local beamGlowPart1 = beamPart:Clone()
  9396. local beamGlowMesh1 = beamMesh:Clone()
  9397. local beamGlowPart2 = beamPart:Clone()
  9398. local beamGlowMesh2 = beamMesh:Clone()
  9399. local beamLight = Instance.new("PointLight", beamPart)
  9400. beamLight.Range = power * 2
  9401. beamLight.Shadows = true
  9402. explosion.BlastPressure = blastPressure
  9403. explosion.BlastRadius = power
  9404. explosion.Position = target
  9405. sound.SoundId = "rbxassetid://2248511"
  9406. sound.Volume = 1
  9407. local explosionHitConnection = explosion.Hit:connect(function(part, distance)
  9408. if not part.Anchored and part:GetMass() < power * power then
  9409. pcall(part.BreakJoints, part)
  9410. part.Color = Color3.new(Utility.GetRainbowRGB(1.5 * gameTime + beamColorOffset))
  9411. end
  9412. end)
  9413. beamPart.Transparency = 0.5
  9414. beamPart.Archivable = false
  9415. beamGlowPart1.Transparency = 0.75
  9416. beamGlowPart2.Transparency = 0.75
  9417. beamGlowMesh1.Parent = beamGlowPart1
  9418. beamGlowPart1.Parent = beamPart
  9419. beamGlowMesh2.Parent = beamGlowPart2
  9420. beamGlowPart2.Parent = beamPart
  9421. beamPart.Parent = workspace
  9422. explosion.Parent = workspace
  9423. for frame = 1, frames do
  9424. local progress = frame / frames
  9425. local alpha = 1 - math.sin(0.5 * math.pi * progress)
  9426. local scale = 0.4 * alpha
  9427. local glowScale1 = alpha * (0.5 + 0.5 * math.sin(math.tau * (8 * gameTime + beamColorOffset)))
  9428. local glowScale2 = alpha * (0.5 + 0.5 * math.cos(math.tau * (8 * gameTime + beamColorOffset)))
  9429. local vertexColor = Vector3.new(Utility.GetRainbowRGB(1.5 * gameTime + beamColorOffset))
  9430. beamLight.Brightness = 1 - progress
  9431. beamLight.Color = Color3.new(vertexColor.x, vertexColor.y, vertexColor.z)
  9432. beamMesh.Scale = Vector3.new(radius * scale, 9000, radius * scale)
  9433. beamMesh.VertexColor = vertexColor
  9434. beamGlowMesh1.Scale = Vector3.new(1.2 * radius * glowScale1, 9000, 1.2 * radius * glowScale1)
  9435. beamGlowMesh1.VertexColor = vertexColor
  9436. beamGlowMesh2.Scale = Vector3.new(1.2 * radius * glowScale2, 9000, 1.2 * radius * glowScale2)
  9437. beamGlowMesh2.VertexColor = vertexColor
  9438. RunService.Stepped:wait()
  9439. gameTime = TaskScheduler.GetCurrentTime()
  9440. if frame <= 2 then
  9441. local explosion = Instance.new("Explosion")
  9442. explosion.BlastPressure = (1 - progress) * blastPressure
  9443. explosion.BlastRadius = (1 - progress) * power
  9444. explosion.Position = target
  9445. explosion.Parent = Workspace
  9446. if frame == 2 then
  9447. sound:Play()
  9448. end
  9449. end
  9450. end
  9451. pcall(beamPart.Destroy, beamPart)
  9452. explosionHitConnection:disconnect()
  9453. end
  9454. function GraphicalEffects.SpaceHyperBeam(target, power, duration, radius, height, deviation)
  9455. TaskScheduler.Start(GraphicalEffects.FireSpaceHyperBeam, target, power or 12, duration or 1.5, radius or 6, height or 600, deviation or 20)
  9456. end
  9457.  
  9458. function GraphicalEffects.CrystalRing(data)
  9459. data = data or {}
  9460. local crystal_count = data.crystal_count or 10
  9461. local crystal_color = data.crystal_color or BrickColor.new("Bright red")
  9462. local crystal_scale = data.crystal_scale or Vector3.new(2 / 3, 2, 2 / 3)
  9463. local fade_out_color = data.fade_out_color or BrickColor.new("Really black")
  9464. local radius = radius or 1.25 * crystal_count / math.pi
  9465. local spawn_duration = data.spawn_duration or 0.065
  9466. local full_spawn_duration = spawn_duration * crystal_count
  9467. local float_duration = data.float_duration or 5
  9468. local wave_amplitude = data.wave_amplitude or 0.5
  9469. local wave_period = data.wave_period or 1
  9470. local appear_duration = data.appear_duration or 0.1
  9471. local disappear_duration = data.disappear_duration or 0.5
  9472. local base_part = data.base_part
  9473. local offset_cframe
  9474. if data.position then
  9475. offset_cframe = CFrame.new(data.position)
  9476. if base_part then
  9477. offset_cframe = base_part.CFrame:toObjectSpace(offset_cframe)
  9478. end
  9479. else
  9480. offset_cframe = CFrame.new()
  9481. end
  9482. local crystal_template = Instance.new("Part")
  9483. crystal_template.Anchored = true
  9484. crystal_template.Locked = true
  9485. crystal_template.CanCollide = false
  9486. crystal_template.BottomSurface = "Smooth"
  9487. crystal_template.TopSurface = "Smooth"
  9488. crystal_template.BrickColor = crystal_color
  9489. crystal_template.FormFactor = "Symmetric"
  9490. crystal_template.Size = Vector3.new(1, 1, 1)
  9491. local crystal_light = Instance.new("PointLight", crystal_template)
  9492. crystal_light.Brightness = 0.1 / crystal_count
  9493. crystal_light.Color = crystal_color.Color
  9494. crystal_light.Name = "Light"
  9495. crystal_light.Range = radius
  9496. crystal_light.Shadows = true
  9497. local crystal_mesh = Instance.new("SpecialMesh", crystal_template)
  9498. crystal_mesh.MeshId = "rbxassetid://9756362"
  9499. crystal_mesh.MeshType = "FileMesh"
  9500. crystal_mesh.Name = "Mesh"
  9501. crystal_mesh.Scale = crystal_scale
  9502. local crystal_model = Instance.new("Model")
  9503. crystal_model.Archivable = false
  9504. crystal_model.Name = "Crystal Model"
  9505. crystal_model.Parent = Workspace
  9506. local crystals = {}
  9507. local lights = {}
  9508. local meshes = {}
  9509. for index = 1, crystal_count do
  9510. local crystal = crystal_template:Clone()
  9511. crystal.Parent = crystal_model
  9512. crystals[index] = crystal
  9513. lights[index] = crystal.Light
  9514. meshes[index] = crystal.Mesh
  9515. end
  9516. local start_time = tick()
  9517. repeat
  9518. local base_cframe = offset_cframe
  9519. if base_part then
  9520. base_cframe = base_part.CFrame * base_cframe
  9521. end
  9522. local elapsed_time = tick() - start_time
  9523. for index, crystal in ipairs(crystals) do
  9524. local crystal_time = elapsed_time - index * spawn_duration
  9525. local disappear_time = crystal_time - float_duration
  9526. local offset
  9527. if crystal_time < 0 then
  9528. offset = 0
  9529. elseif crystal_time < appear_duration then
  9530. offset = radius * crystal_time / appear_duration
  9531. else
  9532. offset = radius
  9533. end
  9534. local wave_offset
  9535. if disappear_time >= 0 then
  9536. local disappear_progress = disappear_time / disappear_duration
  9537. if disappear_progress > 1 then
  9538. if crystal.Parent then
  9539. crystal:Destroy()
  9540. end
  9541. else
  9542. local inverse_progress = 1 - disappear_progress
  9543. local light = lights[index]
  9544. local mesh = meshes[index]
  9545. crystal.BrickColor = fade_out_color
  9546. light.Brightness = 2 * inverse_progress
  9547. light.Range = 2 * radius
  9548. mesh.Scale = crystal_scale * inverse_progress
  9549. end
  9550. wave_offset = 0
  9551. else
  9552. wave_offset = wave_amplitude * math.sin(math.tau * (elapsed_time - index / crystal_count * 3) / wave_period)
  9553. end
  9554. local rotation_angle = (tick() * 0.5 + (index - 1) / crystal_count) % 1 * math.tau
  9555. crystal.CFrame = base_cframe * CFrame.Angles(0, rotation_angle, 0) * CFrame.new(0, wave_offset, -offset)
  9556. end
  9557. RunService.Stepped:wait()
  9558. until elapsed_time >= float_duration + full_spawn_duration + disappear_duration
  9559. if crystal_model.Parent then
  9560. crystal_model:Destroy()
  9561. end
  9562. end
  9563.  
  9564. GraphicalEffects.magicCircleData = {}
  9565. GraphicalEffects.MAGIC_CIRCLE_DEFAULT_OFFSET = 6.25
  9566. function GraphicalEffects.AnimateMagicCircle(data)
  9567. local frame, direction, magic_circle_model, magic_circle_part, magic_circle_light, magic_circle_decal_back, magic_circle_decal_front, duration,
  9568.  
  9569. stay, magic_circle_adornee_func, magic_circle_offset = unpack(data)
  9570. frame = frame + 1
  9571. data[1] = frame
  9572. local transparency = (frame / duration) ^ stay
  9573. local opacity = 1 - transparency
  9574. if frame == duration then
  9575. pcall(Game.Destroy, magic_circle_model)
  9576. GraphicalEffects.magicCircleData[data] = nil
  9577. else
  9578. if magic_circle_model.Parent ~= Workspace then
  9579. pcall(Utility.SetProperty, magic_circle_model, "Parent", Workspace)
  9580. end
  9581. local magic_circle_adornee = magic_circle_adornee_func()
  9582. magic_circle_position = magic_circle_adornee.Position + direction * magic_circle_offset
  9583. local magic_circle_cframe = CFrame.new(magic_circle_position, magic_circle_position + direction) * CFrame.Angles(0, 0, math.tau * frame /
  9584.  
  9585. 25)
  9586. magic_circle_part.CFrame = magic_circle_cframe
  9587. magic_circle_light.Brightness = opacity
  9588. magic_circle_decal_back.Transparency = transparency
  9589. magic_circle_decal_front.Transparency = transparency
  9590. end
  9591. end
  9592. function GraphicalEffects.CreateMagicCircle(target, magic_circle_scale, magic_circle_image, light_color, duration, stay, magic_circle_adornee_func,
  9593.  
  9594. magic_circle_offset)
  9595. local magic_circle_adornee = magic_circle_adornee_func()
  9596. if magic_circle_adornee then
  9597. local origin = magic_circle_adornee.Position
  9598. local direction = (target - origin).unit
  9599. local magic_circle_position = origin + direction * magic_circle_offset
  9600. local magic_circle_cframe = CFrame.new(magic_circle_position, magic_circle_position + direction)
  9601. local magic_circle_model = Instance.new("Model")
  9602. local magic_circle_part = Instance.new("Part", magic_circle_model)
  9603. local magic_circle_mesh = Instance.new("BlockMesh", magic_circle_part)
  9604. local magic_circle_light = Instance.new("PointLight", magic_circle_part)
  9605. local magic_circle_decal_back = Instance.new("Decal", magic_circle_part)
  9606. local magic_circle_decal_front = Instance.new("Decal", magic_circle_part)
  9607. magic_circle_model.Archivable = false
  9608. magic_circle_part.Anchored = true
  9609. magic_circle_part.BottomSurface = "Smooth"
  9610. magic_circle_part.CanCollide = false
  9611. magic_circle_part.CFrame = magic_circle_cframe
  9612. magic_circle_part.FormFactor = "Custom"
  9613. magic_circle_part.Locked = true
  9614. magic_circle_part.Size = Vector3.new(0.2, 0.2, 0.2)
  9615. magic_circle_part.TopSurface = "Smooth"
  9616. magic_circle_part.Transparency = 1
  9617. magic_circle_mesh.Scale = Vector3.new(60, 60, 0) * magic_circle_scale
  9618. magic_circle_light.Color = light_color
  9619. magic_circle_light.Range = 16 * magic_circle_scale
  9620. magic_circle_light.Shadows = true
  9621. magic_circle_decal_back.Face = "Back"
  9622. magic_circle_decal_back.Texture = magic_circle_image
  9623. magic_circle_decal_front.Face = "Front"
  9624. magic_circle_decal_front.Texture = magic_circle_image
  9625. magic_circle_model.Parent = Workspace
  9626. local data = {0, direction, magic_circle_model, magic_circle_part, magic_circle_light, magic_circle_decal_back, magic_circle_decal_front,
  9627.  
  9628. duration, stay, magic_circle_adornee_func, magic_circle_offset}
  9629. GraphicalEffects.magicCircleData[data] = true
  9630. return data
  9631. end
  9632. end
  9633.  
  9634. GraphicalEffects.missileData = {}
  9635. GraphicalEffects.missileParts = {}
  9636. function GraphicalEffects.AnimateMissile(data)
  9637. local frame, missilePart, targetPart, timeCreated, direction, touchedConnection, explodeRequested, bodyGyro, swooshSound, magicCircleData, lifeTime,
  9638.  
  9639. pointOnPart, flipped = unpack(data)
  9640. frame = frame + 1
  9641. data[1] = frame
  9642. if flipped then
  9643. direction = -direction
  9644. end
  9645. if frame <= 10 then
  9646. if frame == 2 then
  9647. swooshSound:Play()
  9648. end
  9649. missilePart.Anchored = true
  9650. local progress = frame / 10
  9651. missilePart.Size = Vector3.new(1, 1, progress * 4)
  9652. local magicCirclePart = magicCircleData[4]
  9653. local magicCirclePosition = magicCirclePart.Position
  9654. local missileOffset = 2 * progress * direction
  9655. local missilePosition = magicCirclePosition + missileOffset
  9656. missilePart.CFrame = CFrame.new(missilePosition, missilePosition + direction)
  9657. --missilePart.Transparency = 0.5 * (1 - progress)
  9658. if frame == 10 then
  9659. touchedConnection = missilePart.Touched:connect(function(hit)
  9660. if hit.CanCollide and hit.Parent and not GraphicalEffects.missileParts[hit] then
  9661. touchedConnection:disconnect()
  9662. data[7] = true
  9663. end
  9664. end)
  9665. data[6] = touchedConnection
  9666. end
  9667. else
  9668. missilePart.Anchored = false
  9669. local missilePosition = missilePart.Position
  9670. local targetPosition = targetPart.CFrame * pointOnPart
  9671. local distanceVector = targetPosition - missilePosition
  9672. local elapsedTime = time() - timeCreated
  9673. local targetParent = targetPart.Parent
  9674. if explodeRequested or (targetParent and distanceVector.magnitude < 10) or elapsedTime > lifeTime then
  9675. GraphicalEffects.missileData[data] = nil
  9676. GraphicalEffects.missileParts[missilePart] = nil
  9677. touchedConnection:disconnect()
  9678. if missilePart.Parent then
  9679. missilePart:Destroy()
  9680. local explosion = Instance.new("Explosion")
  9681. explosion.BlastRadius = 12.5
  9682. explosion.Position = missilePosition
  9683. local explosionHitConnection = explosion.Hit:connect(function(hit, distance)
  9684. local missileData = GraphicalEffects.missileParts[hit]
  9685. if missileData and distance < 3 then
  9686. missileData[7] = true
  9687. else
  9688. pcall(hit.BreakJoints, hit)
  9689. end
  9690. end)
  9691. explosion.Parent = Workspace
  9692. TaskScheduler.Schedule(1, explosionHitConnection.disconnect, explosionHitConnection)
  9693. end
  9694. else
  9695. local targetInWorkspace = targetPart:IsDescendantOf(Workspace)
  9696. if targetInWorkspace then
  9697. direction = distanceVector.unit
  9698. data[5] = direction
  9699. end
  9700. local speed = 14 + elapsedTime * 10
  9701. local gyroD
  9702. if elapsedTime < 42.5 and targetInWorkspace then
  9703. gyroD = 1000 - elapsedTime * 15
  9704. else
  9705. gyroD = 100
  9706. bodyGyro.maxTorque = Vector3.new(0, 0, 0)
  9707. if elapsedTime + 7.5 < lifeTime then
  9708. data[11] = elapsedTime + 7.5
  9709. end
  9710. end
  9711. bodyGyro.D = gyroD
  9712. bodyGyro.cframe = CFrame.new(Vector3.new(), direction)
  9713. missilePart.Velocity = missilePart.CFrame.lookVector * speed
  9714. end
  9715. end
  9716. end
  9717. function GraphicalEffects.ShootMissile(targetPart, pointOnPart, direction, magic_circle_adornee_func, magic_circle_offset, flipped)
  9718. if not magic_circle_offset then
  9719. magic_circle_offset = GraphicalEffects.MAGIC_CIRCLE_DEFAULT_OFFSET
  9720. end
  9721. local targetPosition = targetPart.Position
  9722. local headPosition = chatAdornee.Position
  9723. local origin = CFrame.new(headPosition, headPosition + direction) + direction * magic_circle_offset
  9724. local missilePart = Instance.new("Part")
  9725. local antiGravityForce = Instance.new("BodyForce", missilePart)
  9726. local bodyGyro = Instance.new("BodyGyro", missilePart)
  9727. local explosionSound = Instance.new("Sound", missilePart)
  9728. local swooshSound = Instance.new("Sound", missilePart)
  9729. antiGravityForce.force = Vector3.new(0, 196.2 * 4, 0)
  9730. bodyGyro.D = 1000
  9731. bodyGyro.maxTorque = Vector3.new(1, 1, 1)
  9732. explosionSound.PlayOnRemove = true
  9733. explosionSound.SoundId = "rbxasset://sounds/collide.wav"
  9734. explosionSound.Volume = 1
  9735. missilePart.Anchored = true
  9736. missilePart.BackSurface = "Studs"
  9737. missilePart.BottomSurface = "Studs"
  9738. missilePart.BrickColor = BrickColor.Red()
  9739. missilePart.CFrame = origin
  9740. missilePart.FormFactor = "Custom"
  9741. missilePart.FrontSurface = "Studs"
  9742. missilePart.LeftSurface = "Studs"
  9743. missilePart.Locked = true
  9744. missilePart.RightSurface = "Studs"
  9745. missilePart.Size = Vector3.new(1, 1, 0.2)
  9746. missilePart.TopSurface = "Studs"
  9747. --missilePart.Transparency = 0.5
  9748. swooshSound.Looped = true
  9749. swooshSound.SoundId = "rbxasset://sounds/Rocket whoosh 01.wav"
  9750. swooshSound.Volume = 0.7
  9751. local magicCircleData = GraphicalEffects.CreateMagicCircle(headPosition + direction * 1000, 0.875, "rbxassetid://127033719", Color3.new(1, 1, 1),
  9752.  
  9753. 40, 4, magic_circle_adornee_func or function() return chatAdornee end, magic_circle_offset)
  9754. local data = {0, missilePart, targetPart, time(), direction, false, false, bodyGyro, swooshSound, magicCircleData, 50, pointOnPart, flipped}
  9755. missilePart.Parent = Workspace
  9756. GraphicalEffects.missileData[data] = true
  9757. GraphicalEffects.missileParts[missilePart] = data
  9758. end
  9759.  
  9760. function GraphicalEffects.CubicInterpolate(y0, y1, y2, y3, mu)
  9761. local a0, a1, a2, a3, mu2
  9762. mu2 = mu * mu
  9763. a0 = y3 - y2 - y0 + y1
  9764. a1 = y0 - y1 - a0
  9765. a2 = y2 - y0
  9766. a3 = y1
  9767. return a0 * mu * mu2 + a1 * mu2 + a2 * mu + a3
  9768. end
  9769. function GraphicalEffects.JointCrap(model, cycletime)
  9770. if model then
  9771. local cycletime = cycletime or (0.75 * (1 + math.random() * 4))
  9772. local offsetradius = 0.75
  9773. local rotationoffset = math.pi
  9774. local joints = {}
  9775. local stack = model:GetChildren()
  9776. while #stack ~= 0 do
  9777. local object = stack[#stack]
  9778. table.remove(stack)
  9779. for index, child in ipairs(object:GetChildren()) do
  9780. table.insert(stack, child)
  9781. end
  9782. if object:IsA("JointInstance") then
  9783. table.insert(joints, object)
  9784. end
  9785. end
  9786. local rot0 = {}
  9787. local rot1 = {}
  9788. local rot2 = {}
  9789. local rot3 = {}
  9790. local rot4 = {}
  9791. for index, joint in ipairs(joints) do
  9792. local pos = Vector3.new(math.random() - 0.5, math.random() - 0.5, math.random() - 0.5).unit * offsetradius
  9793. local rot = Vector3.new(math.random(), math.random(), math.random()) * rotationoffset
  9794. rot0[index] = {joint.C0, joint.C1}
  9795. rot = Vector3.new(rot.x % (math.tau), rot.y % (math.tau), rot.z % (math.tau))
  9796. rot2[index] = {pos, rot}
  9797. pos = Vector3.new(math.random() - 0.5, math.random() - 0.5, math.random() - 0.5).unit * offsetradius
  9798. rot = rot + Vector3.new(math.random(), math.random(), math.random()) * rotationoffset
  9799. rot = Vector3.new(rot.x % (math.tau), rot.y % (math.tau), rot.z % (math.tau))
  9800. rot3[index] = {pos, rot}
  9801. pos = Vector3.new(math.random() - 0.5, math.random() - 0.5, math.random() - 0.5).unit * offsetradius
  9802. rot = rot + Vector3.new(math.random(), math.random(), math.random()) * rotationoffset
  9803. rot = Vector3.new(rot.x % (math.tau), rot.y % (math.tau), rot.z % (math.tau))
  9804. rot4[index] = {pos, rot}
  9805. end
  9806. while model.Parent do
  9807. for i, j in ipairs(joints) do
  9808. local pos = Vector3.new(math.random() - 0.5, math.random() - 0.5, math.random() - 0.5).unit * offsetradius
  9809. local rot = rot4[i][2] + Vector3.new(math.random(), math.random(), math.random()) * rotationoffset
  9810. rot = Vector3.new(rot.x % (math.tau), rot.y % (math.tau), rot.z % (math.tau))
  9811. rot1[i], rot2[i], rot3[i], rot4[i] = rot2[i], rot3[i], rot4[i], {pos, rot}
  9812. end
  9813. local start = tick()
  9814. while true do
  9815. local ctime = tick()
  9816. local elapsed = ctime - start
  9817. if elapsed > cycletime then
  9818. break
  9819. end
  9820. local progress = elapsed / cycletime
  9821. for index, joint in ipairs(joints) do
  9822. local v0, v1, v2, v3, v4 = rot0[index], rot1[index], rot2[index], rot3[index], rot4[index]
  9823. local p1, p2, p3, p4, r1, r2, r3, r4 = v1[1], v2[1], v3[1], v4[1], v1[2], v2[2], v3[2], v4[2]
  9824. local px = GraphicalEffects.CubicInterpolate(p1.x, p2.x, p3.x, p4.x, progress)
  9825. local py = GraphicalEffects.CubicInterpolate(p1.y, p2.y, p3.y, p4.y, progress)
  9826. local pz = GraphicalEffects.CubicInterpolate(p1.z, p2.z, p3.z, p4.z, progress)
  9827. local rx = GraphicalEffects.CubicInterpolate(r1.x, r2.x, r3.x, r4.x, progress)
  9828. local ry = GraphicalEffects.CubicInterpolate(r1.y, r2.y, r3.y, r4.y, progress)
  9829. local rz = GraphicalEffects.CubicInterpolate(r1.z, r2.z, r3.z, r4.z, progress)
  9830. local cframe = CFrame.new(px, py, pz) * CFrame.Angles(rx, ry, rz)
  9831. joint.C0 = v0[1] * cframe
  9832. joint.C1 = v0[2] * cframe:inverse()
  9833. end
  9834. RunService.Stepped:wait()
  9835. end
  9836. end
  9837. end
  9838. end
  9839.  
  9840. GraphicalEffects.LASER_WIDTH = 0.15
  9841. GraphicalEffects.LASER_MAGIC_CIRCLE_DISTANCE = 6.25
  9842. GraphicalEffects.laser_data = {}
  9843. --GraphicalEffects.fragmentation = {}
  9844. function GraphicalEffects.AnimateLaserOfDeath(data)
  9845. local frame, directionOrientation, direction, magic_circle_model, laser_part, laser_mesh, magic_circle_part, magic_circle_light,
  9846.  
  9847. magic_circle_decal_back, magic_circle_decal_front, sound, laser_scale, fragmentation_size, duration, laser_lights, laser_effects, stay, light_effects =
  9848.  
  9849. unpack(data)
  9850. local laser_color = laser_part.Color
  9851. frame = frame + 1
  9852. data[1] = frame
  9853. local transparency = (frame / duration) ^ stay
  9854. local opacity = 1 - transparency
  9855. if frame == 2 then
  9856. sound:Play()
  9857. end
  9858. if frame == duration then
  9859. pcall(Game.Destroy, magic_circle_model)
  9860. GraphicalEffects.laser_data[data] = nil
  9861. else
  9862. if magic_circle_model.Parent ~= Workspace then
  9863. pcall(Utility.SetProperty, magic_circle_model, "Parent", Workspace)
  9864. end
  9865. local laser_distance = 0
  9866. local origin = chatAdornee.CFrame
  9867. if not light_effects then
  9868. direction = (origin * directionOrientation - origin.p).unit
  9869. end
  9870. local magic_circle_position = origin.p + direction * GraphicalEffects.LASER_MAGIC_CIRCLE_DISTANCE
  9871. local magic_circle_cframe = CFrame.new(magic_circle_position, magic_circle_position + direction) * CFrame.Angles(0, 0, math.tau * frame /
  9872.  
  9873. 25)
  9874. local loop_scale = (laser_scale - 1) / 10
  9875. for x_offset = -loop_scale, loop_scale, 2 do
  9876. for y_offset = -loop_scale, loop_scale, 2 do
  9877. local origin_position = magic_circle_cframe * Vector3.new(x_offset, y_offset, 0)
  9878. for index = 1, 8 do
  9879. local part, position
  9880. for ray_index = 1, 10 do
  9881. local ray = Ray.new(origin_position + direction * (999 * (ray_index - 1)), direction * 999)
  9882. part, position = Workspace:FindPartOnRay(ray, magic_circle_model)
  9883. if part then
  9884. break
  9885. end
  9886. end
  9887. if part then
  9888. laser_distance = (position - origin_position).magnitude
  9889. if frame % 8 == 1 and index == 1 then
  9890. Instance.new("Explosion", Workspace).Position = position
  9891. end
  9892. if not part:IsA("Terrain") then
  9893. pcall(part.BreakJoints, part)
  9894. local is_block = part:IsA("Part") and part.Shape == Enum.PartType.Block
  9895. local mass = part:GetMass()
  9896. local size = part.Size
  9897. if (is_block and ((size.X < fragmentation_size and size.Y < fragmentation_size and size.Z <
  9898.  
  9899. fragmentation_size) or (not part.Anchored and mass < 750))) or (not is_block and mass < 250000) then
  9900. local part_transparency = math.max(part.Transparency + 0.007 * fragmentation_size, 0.5)
  9901. if part_transparency >= 0.5 then -- temporarily to minimize debris
  9902. pcall(Game.Destroy, part)
  9903. else
  9904. local cframe = part.CFrame
  9905. part.Anchored = false
  9906. part.BrickColor = BrickColor.new("Medium stone grey")
  9907. part.CanCollide = true
  9908. if part:IsA("FormFactorPart") then
  9909. part.FormFactor = "Custom"
  9910. end
  9911. part.Size = size - Vector3.new(0.135, 0.135, 0.135) * fragmentation_size
  9912. part.Transparency = part_transparency
  9913. part.CFrame = cframe + direction * 5
  9914. part.Velocity = part.Velocity + direction * 40
  9915. end
  9916. elseif is_block then
  9917. local parts = {part}
  9918. local model = Instance.new("Model", part.Parent)
  9919. model.Name = "Fragments"
  9920. if size.X >= fragmentation_size then
  9921. size = Vector3.new(0.5, 1, 1) * size
  9922. local archivable = part.Archivable
  9923. local cframe = part.CFrame
  9924. part.FormFactor = "Custom"
  9925. part.Size = size
  9926. part.Archivable = true
  9927. local part_clone = part:Clone()
  9928. part.Archivable = archivable
  9929. part_clone.Archivable = archivable
  9930. part.CFrame = cframe * CFrame.new(-0.5 * size.X, 0, 0)
  9931. part_clone.CFrame = cframe * CFrame.new(0.5 * size.X, 0, 0)
  9932. part_clone.Parent = model
  9933. parts[2] = part_clone
  9934. end
  9935. if size.Y >= fragmentation_size then
  9936. size = Vector3.new(1, 0.5, 1) * size
  9937. for part_index = 1, #parts do
  9938. local part = parts[part_index]
  9939. local archivable = part.Archivable
  9940. local cframe = part.CFrame
  9941. part.FormFactor = "Custom"
  9942. part.Size = size
  9943. part.Archivable = true
  9944. local part_clone = part:Clone()
  9945. part.Archivable = archivable
  9946. part_clone.Archivable = archivable
  9947. part.CFrame = cframe * CFrame.new(0, -0.5 * size.Y, 0)
  9948. part_clone.CFrame = cframe * CFrame.new(0, 0.5 * size.Y, 0)
  9949. part_clone.Parent = model
  9950. table.insert(parts, part_clone)
  9951. end
  9952. end
  9953. if size.Z >= fragmentation_size then
  9954. size = Vector3.new(1, 1, 0.5) * size
  9955. for part_index = 1, #parts do
  9956. local part = parts[part_index]
  9957. local archivable = part.Archivable
  9958. local cframe = part.CFrame
  9959. part.FormFactor = "Custom"
  9960. part.Size = size
  9961. part.Archivable = true
  9962. local part_clone = part:Clone()
  9963. part.Archivable = archivable
  9964. part_clone.Archivable = archivable
  9965. part.CFrame = cframe * CFrame.new(0, 0, -0.5 * size.Z)
  9966. part_clone.CFrame = cframe * CFrame.new(0, 0, 0.5 * size.Z)
  9967. part_clone.Parent = model
  9968. table.insert(parts, part_clone)
  9969. end
  9970. end
  9971. for _, part in ipairs(parts) do
  9972. part:MakeJoints()
  9973. end
  9974. else
  9975. break
  9976. end
  9977. end
  9978. else
  9979. laser_distance = 9990
  9980. break
  9981. end
  9982. end
  9983. end
  9984. end
  9985. local laser_cframe = magic_circle_cframe * CFrame.Angles(-0.5 * math.pi, 0, 0)
  9986. local laser_width = GraphicalEffects.LASER_WIDTH * opacity * laser_scale
  9987. local laser_mesh_offset = Vector3.new(0, 0.5 * laser_distance, 0)
  9988. laser_part.CFrame = laser_cframe
  9989. if laser_effects then
  9990. local laser_effect_data_1, laser_effect_data_2 = laser_effects[1], laser_effects[2]
  9991. local laser_effect_1, laser_effect_mesh_1 = laser_effect_data_1[1], laser_effect_data_1[2]
  9992. local laser_effect_2, laser_effect_mesh_2 = laser_effect_data_2[1], laser_effect_data_2[2]
  9993. laser_effect_1.CFrame = laser_cframe
  9994. laser_effect_2.CFrame = laser_cframe
  9995. laser_effect_mesh_1.Offset = laser_mesh_offset
  9996. laser_effect_mesh_2.Offset = laser_mesh_offset
  9997. local game_time = time()
  9998. local effect_scale_1 = 0.5 + 0.5 * math.sin(16 * math.pi * game_time)
  9999. local effect_scale_2 = 0.5 + 0.5 * math.cos(16 * math.pi * game_time)
  10000. laser_effect_mesh_1.Scale = 5 * Vector3.new(laser_width * effect_scale_1, laser_distance, laser_width * effect_scale_1)
  10001. laser_effect_mesh_2.Scale = 5 * Vector3.new(laser_width * effect_scale_2, laser_distance, laser_width * effect_scale_2)
  10002. laser_width = laser_width * 0.25
  10003. end
  10004. laser_mesh.Offset = laser_mesh_offset
  10005. laser_mesh.Scale = 5 * Vector3.new(laser_width, laser_distance, laser_width)
  10006. magic_circle_part.CFrame = magic_circle_cframe
  10007. magic_circle_light.Brightness = opacity
  10008. magic_circle_decal_back.Transparency = transparency
  10009. magic_circle_decal_front.Transparency = transparency
  10010. if light_effects then
  10011. for index, data in ipairs(laser_lights) do
  10012. local laser_spotlight_part, laser_spotlight = data[1], data[2]
  10013. local laser_spotlight_offset = 30 * (index - 1)
  10014. if laser_spotlight_offset <= laser_distance then
  10015. laser_spotlight_part.CFrame = magic_circle_cframe * CFrame.new(0, 0, -laser_spotlight_offset)
  10016. laser_spotlight.Brightness = opacity
  10017. laser_spotlight.Enabled = true
  10018. else
  10019. laser_spotlight.Enabled = false
  10020. end
  10021. end
  10022. end
  10023. end
  10024. end
  10025. function GraphicalEffects.ShootLaserOfDeath(target, data)
  10026. if chatAdornee then
  10027. data = data or {}
  10028. local brickcolor = data.brickcolor or BrickColor.new("Really black")
  10029. local duration = data.duration or 40
  10030. local fragmentation_size = data.fragmentation_size or 3
  10031. local laser_scale = data.laser_scale or 1
  10032. local light_color = data.light_color or Color3.new(1, 0.5, 1)
  10033. local magic_circle_image = data.magic_circle_image or "rbxassetid://122610943"
  10034. local magic_circle_scale = data.magic_circle_scale or 1
  10035. local sound_volume = data.sound_volume or 1 / 3
  10036. local special_effects = data.special_effects
  10037. local stay = data.stay or 4
  10038. local origin = chatAdornee.CFrame
  10039. local directionOrientation = origin:pointToObjectSpace(target)
  10040. local direction = (target - origin.p).unit
  10041. local magic_circle_position = origin.p + direction * GraphicalEffects.LASER_MAGIC_CIRCLE_DISTANCE
  10042. local magic_circle_cframe = CFrame.new(magic_circle_position, magic_circle_position + direction)
  10043. local magic_circle_model = Instance.new("Model")
  10044. local laser_part = Instance.new("Part", magic_circle_model)
  10045. local laser_mesh = Instance.new("CylinderMesh", laser_part)
  10046. local magic_circle_part = Instance.new("Part", magic_circle_model)
  10047. local magic_circle_mesh = Instance.new("BlockMesh", magic_circle_part)
  10048. local magic_circle_light = Instance.new("PointLight", magic_circle_part)
  10049. local magic_circle_decal_back = Instance.new("Decal", magic_circle_part)
  10050. local magic_circle_decal_front = Instance.new("Decal", magic_circle_part)
  10051. local sound = Instance.new("Sound", magic_circle_part)
  10052. sound.Pitch = 1.25
  10053. sound.SoundId = "rbxassetid://2248511"
  10054. sound.Volume = sound_volume
  10055. magic_circle_model.Archivable = false
  10056. laser_part.Anchored = true
  10057. laser_part.BottomSurface = "Smooth"
  10058. laser_part.BrickColor = brickcolor
  10059. laser_part.CanCollide = false
  10060. laser_part.CFrame = magic_circle_cframe * CFrame.Angles(-0.5 * math.pi, 0, 0)
  10061. laser_part.FormFactor = "Custom"
  10062. laser_part.Locked = true
  10063. laser_part.Size = Vector3.new(0.2, 0.2, 0.2)
  10064. laser_part.TopSurface = "Smooth"
  10065. laser_mesh.Offset = Vector3.new(0, 0, 0)
  10066. laser_mesh.Name = "Mesh"
  10067. laser_mesh.Scale = 5 * laser_scale * Vector3.new(GraphicalEffects.LASER_WIDTH, 0, GraphicalEffects.LASER_WIDTH)
  10068. magic_circle_part.Anchored = true
  10069. magic_circle_part.BottomSurface = "Smooth"
  10070. magic_circle_part.CanCollide = false
  10071. magic_circle_part.CFrame = magic_circle_cframe
  10072. magic_circle_part.FormFactor = "Custom"
  10073. magic_circle_part.Locked = true
  10074. magic_circle_part.Size = Vector3.new(0.2, 0.2, 0.2)
  10075. magic_circle_part.TopSurface = "Smooth"
  10076. magic_circle_part.Transparency = 1
  10077. magic_circle_mesh.Scale = Vector3.new(60, 60, 0) * magic_circle_scale
  10078. magic_circle_light.Color = light_color
  10079. magic_circle_light.Range = 16 * magic_circle_scale
  10080. magic_circle_light.Shadows = true
  10081. magic_circle_decal_back.Face = "Back"
  10082. magic_circle_decal_back.Texture = magic_circle_image
  10083. magic_circle_decal_front.Face = "Front"
  10084. magic_circle_decal_front.Texture = magic_circle_image
  10085. magic_circle_model.Parent = Workspace
  10086. local laser_color = brickcolor.Color
  10087. local laser_lights = {}
  10088. local light_effects = laser_color.r + laser_color.g + laser_color.b > 0.25
  10089. if light_effects then
  10090. local laser_spotlight_part_template = Instance.new("Part")
  10091. local laser_spotlight_light_template = Instance.new("SpotLight", laser_spotlight_part_template)
  10092. laser_spotlight_part_template.Anchored = true
  10093. laser_spotlight_part_template.Anchored = true
  10094. laser_spotlight_part_template.BottomSurface = "Smooth"
  10095. laser_spotlight_part_template.CanCollide = false
  10096. laser_spotlight_part_template.FormFactor = "Custom"
  10097. laser_spotlight_part_template.Locked = true
  10098. laser_spotlight_part_template.Size = Vector3.new(0.2, 0.2, 0.2)
  10099. laser_spotlight_part_template.TopSurface = "Smooth"
  10100. laser_spotlight_part_template.Transparency = 1
  10101. laser_spotlight_light_template.Angle = 45
  10102. laser_spotlight_light_template.Color = laser_color
  10103. laser_spotlight_light_template.Enabled = true
  10104. laser_spotlight_light_template.Name = "Light"
  10105. laser_spotlight_light_template.Range = 60
  10106. for index = 1, 40 do
  10107. local laser_spotlight_part = laser_spotlight_part_template:Clone()
  10108. laser_spotlight_part.CFrame = magic_circle_cframe * CFrame.new(0, 0, -30 * (index - 1))
  10109. laser_spotlight_part.Parent = magic_circle_model
  10110. laser_lights[index] = {laser_spotlight_part, laser_spotlight_part.Light}
  10111. end
  10112. end
  10113. local laser_effects
  10114. if special_effects then
  10115. laser_effects = {}
  10116. local laser_effect_1 = laser_part:Clone()
  10117. laser_effect_1.BrickColor = special_effects
  10118. laser_effect_1.Transparency = 0.5
  10119. local laser_effect_2 = laser_effect_1:Clone()
  10120. laser_effects[1], laser_effects[2] = {laser_effect_1, laser_effect_1.Mesh}, {laser_effect_2, laser_effect_2.Mesh}
  10121. laser_effect_1.Parent = magic_circle_model
  10122. laser_effect_2.Parent = magic_circle_model
  10123. end
  10124. GraphicalEffects.laser_data[{0, directionOrientation, direction, magic_circle_model, laser_part, laser_mesh, magic_circle_part,
  10125.  
  10126. magic_circle_light, magic_circle_decal_back, magic_circle_decal_front, sound, laser_scale, fragmentation_size, duration, laser_lights, laser_effects, stay,
  10127.  
  10128. light_effects}] = true
  10129. end
  10130. end
  10131.  
  10132. function GraphicalEffects.SpawnSapientRock(position)
  10133. local part = Instance.new("Part", Workspace)
  10134. local size = 8 + math.random(0, 5)
  10135. part.BottomSurface = "Smooth"
  10136. part.TopSurface = "Smooth"
  10137. part.Material = "Slate"
  10138. part.Locked = true
  10139. part.Shape = "Ball"
  10140. part.FormFactor = "Custom"
  10141. part.Size = Vector3.new(size, size, size)
  10142. part.Position = position
  10143. local bodypos = Instance.new("BodyPosition", part)
  10144. bodypos.maxForce = Vector3.new(0, 0, 0)
  10145. local angry = false
  10146. local damage_ready = true
  10147. local torso_following
  10148. local torso_changed = -1000
  10149. local touched_conn = part.Touched:connect(function(hit)
  10150. local character = hit.Parent
  10151. if character then
  10152. local humanoid
  10153. for _, child in ipairs(character:GetChildren()) do
  10154. if child:IsA("Humanoid") then
  10155. humanoid = child
  10156. break
  10157. end
  10158. end
  10159. if humanoid then
  10160. if angry then
  10161. if damage_ready then
  10162. damage_ready = false
  10163. humanoid:TakeDamage(100)
  10164. wait(1)
  10165. damage_ready = true
  10166. angry = false
  10167. part.BrickColor = BrickColor.new("Medium stone grey")
  10168. end
  10169. else
  10170. local torso = humanoid.Torso
  10171. if torso then
  10172. torso_following = torso
  10173. torso_changed = tick()
  10174. end
  10175. end
  10176. end
  10177. end
  10178. end)
  10179. TaskScheduler.Start(function()
  10180. while part.Parent == Workspace do
  10181. if torso_following then
  10182. bodypos.position = torso_following.Position
  10183. if tick() - torso_changed > 60 or not torso_following.Parent then
  10184. torso_following = nil
  10185. bodypos.maxForce = Vector3.new(0, 0, 0)
  10186. angry = false
  10187. part.BrickColor = BrickColor.new("Medium stone grey")
  10188. else
  10189. local speed = angry and Vector3.new(16, 16, 16) or Vector3.new(6, 0, 6)
  10190. bodypos.maxForce = part:GetMass() * speed
  10191. if part.Position.Y < -250 then
  10192. part.Velocity = Vector3.new()
  10193. part.Position = torso_following.Position + Vector3.new(0, 80, 0)
  10194. part.BrickColor = BrickColor.new("Bright red")
  10195. angry = true
  10196. torso_changed = tick()
  10197. end
  10198. end
  10199. end
  10200. RunService.Stepped:wait()
  10201. end
  10202. touched_conn:disconnect()
  10203. end)
  10204. TaskScheduler.Start(function()
  10205. while part.Parent == Workspace do
  10206. wait(25 + math.random() * 10)
  10207. local next_size = 8 + math.random() * 5
  10208. if math.random(100) == 1 then
  10209. next_size = next_size * (2 + 6 * math.random())
  10210. end
  10211. next_size = math.floor(next_size + 0.5)
  10212. local start_time = tick()
  10213. local mesh = Instance.new("SpecialMesh", part)
  10214. mesh.MeshType = "Sphere"
  10215. repeat
  10216. local elapsed_time = tick() - start_time
  10217. local alpha = math.cos(elapsed_time * math.pi * 0.5)
  10218. local interpolated_size = size * alpha + next_size * (1 - alpha)
  10219. local size_vector = Vector3.new(interpolated_size, interpolated_size, interpolated_size)
  10220. local cframe = part.CFrame
  10221. part.Size = size_vector
  10222. part.CFrame = cframe
  10223. mesh.Scale = size_vector / part.Size
  10224. RunService.Stepped:wait()
  10225. until tick() - start_time >= 1
  10226. mesh:Destroy()
  10227. local cframe = part.CFrame
  10228. part.Size = Vector3.new(next_size, next_size, next_size)
  10229. part.CFrame = cframe
  10230. size = next_size
  10231. end
  10232. end)
  10233. end
  10234.  
  10235. function GraphicalEffects.MainLoop()
  10236. RunService.Stepped:wait()
  10237. for data in pairs(GraphicalEffects.magicCircleData) do
  10238. GraphicalEffects.AnimateMagicCircle(data)
  10239. end
  10240. for data in pairs(GraphicalEffects.laser_data) do
  10241. GraphicalEffects.AnimateLaserOfDeath(data)
  10242. end
  10243. for data in pairs(GraphicalEffects.missileData) do
  10244. GraphicalEffects.AnimateMissile(data)
  10245. end
  10246. end
  10247. TaskScheduler.Start(function()
  10248. while true do
  10249. GraphicalEffects.MainLoop()
  10250. end
  10251. end)
  10252.  
  10253. PlayerControl = {};
  10254.  
  10255. PlayerControl.fly_acceleration = 10
  10256. PlayerControl.fly_basespeed = 250
  10257. PlayerControl.fly_speed = PlayerControl.fly_basespeed
  10258. PlayerControl.featherfallEnabled = true
  10259. PlayerControl.pushable = false
  10260. PlayerControl.rolling = false
  10261. PlayerControl.rollingAngle = 0
  10262. PlayerControl.rollingOffset = 0
  10263. PlayerControl.rollingMaxOffset = 3
  10264. PlayerControl.rollingSpeed = 1 / 50
  10265. PlayerControl.characterEnabled = false
  10266. PlayerControl.characterMode = "normal"
  10267. local character = nil
  10268. local flying, flyingMomentum, flyingTilt = false, Vector3.new(), 0
  10269. local pose, regeneratingHealth, jumpDebounce = "Standing", false, false
  10270. -- TODO: make local variables public
  10271. local model, bodyColors, leftArmMesh, leftLegMesh, rightArmMesh, rightLegMesh, torsoMesh, wildcardHat, wildcardHandle, wildcardMesh, pants, shirt, humanoid,
  10272.  
  10273. head, leftArm, leftLeg, rightArm, rightLeg, torso, rootPart, rootJoint, face, soundFreeFalling, soundGettingUp, soundRunning, leftHip, leftShoulder,
  10274.  
  10275. rightHip, rightShoulder, neck, wildcardWeld, feetPart, feetWeld, feetTouchInterest, bodyGyro, bodyVelocity, headMesh, torsoLight
  10276. local AnimateCharacter
  10277. local UserInterface = game:service'UserInputService'
  10278. local chatBubbles = {}
  10279. local chatCharacterLimit = 240
  10280. function PlayerControl.CreateCharacter()
  10281. local characterMode = PlayerControl.characterMode
  10282. if characterMode == "normal" then
  10283. if not PlayerControl.characterEnabled then
  10284. return
  10285. end
  10286. local appearance = CharacterAppearance.GetDefaultAppearance()
  10287. local active = true
  10288. local torsoCFrame = (torso and torso.CFrame) or PlayerControl.torso_cframe or CFrame.new(0, 10, 0)
  10289. if torsoCFrame.p.Y < -450 then
  10290. torsoCFrame = CFrame.new(0, 10, 0)
  10291. end
  10292. local rootPartCFrame = (rootPart and rootPart.CFrame) or PlayerControl.torso_cframe or CFrame.new(0, 10, 0)
  10293. if rootPartCFrame.p.Y < -450 then
  10294. rootPartCFrame = CFrame.new(0, 10, 0)
  10295. end
  10296. local cameraCFrame = Camera.CoordinateFrame
  10297. local connections = {}
  10298. local feetTouching = {}
  10299. local previousWalkSpeed = 0
  10300. local prevLeftHip, prevLeftShoulder, prevRightHip, prevRightShoulder = leftHip, leftShoulder, rightHip, rightShoulder
  10301. model = Instance.new("Model")
  10302. humanoid = Instance.new("Humanoid", model)
  10303. head = Instance.new("Part", model)
  10304. leftArm = Instance.new("Part", model)
  10305. leftLeg = Instance.new("Part", model)
  10306. rightArm = Instance.new("Part", model)
  10307. rightLeg = Instance.new("Part", model)
  10308. torso = Instance.new("Part", model)
  10309. rootPart = Instance.new("Part", model)
  10310. soundFallingDown = Instance.new("Sound", head)
  10311. soundFreeFalling = Instance.new("Sound", head)
  10312. soundGettingUp = Instance.new("Sound", head)
  10313. soundJumping = Instance.new("Sound", head)
  10314. soundRunning = Instance.new("Sound", head)
  10315. leftHip = Instance.new("Motor", torso)
  10316. leftShoulder = Instance.new("Motor", torso)
  10317. rightHip = Instance.new("Motor", torso)
  10318. rightShoulder = Instance.new("Motor", torso)
  10319. neck = Instance.new("Motor", torso)
  10320. rootJoint = Instance.new("Motor", rootPart)
  10321. feetPart = Instance.new("Part", model)
  10322. feetWeld = Instance.new("Weld", torso)
  10323. bodyGyro = Instance.new("BodyGyro", rootPart)
  10324. bodyVelocity = Instance.new("BodyVelocity", rootPart)
  10325. model.Archivable = false
  10326. model.Name = user_name or Player.Name
  10327. model.PrimaryPart = head
  10328. humanoid.LeftLeg = leftLeg
  10329. humanoid.RightLeg = rightLeg
  10330. humanoid.Torso = rootPart
  10331. head.CFrame = torsoCFrame * CFrame.new(0, 1.5, 0)
  10332. head.FormFactor = "Symmetric"
  10333. head.Locked = true
  10334. head.Name = "Head"
  10335. head.Size = Vector3.new(2, 1, 1)
  10336. head.TopSurface = "Smooth"
  10337. leftArm.CanCollide = false
  10338. leftArm.CFrame = torsoCFrame * CFrame.new(-1.5, 0, 0)
  10339. leftArm.FormFactor = "Symmetric"
  10340. leftArm.Locked = true
  10341. leftArm.Name = "Left Arm"
  10342. leftArm.Size = Vector3.new(1, 2, 1)
  10343. leftLeg.BottomSurface = "Smooth"
  10344. leftLeg.CanCollide = false
  10345. leftLeg.CFrame = torsoCFrame * CFrame.new(-0.5, -2, 0)
  10346. leftLeg.FormFactor = "Symmetric"
  10347. leftLeg.Locked = true
  10348. leftLeg.Name = "Left Leg"
  10349. leftLeg.Size = Vector3.new(1, 2, 1)
  10350. leftLeg.TopSurface = "Smooth"
  10351. rightArm.CanCollide = false
  10352. rightArm.CFrame = torsoCFrame * CFrame.new(1.5, 0, 0)
  10353. rightArm.FormFactor = "Symmetric"
  10354. rightArm.Locked = true
  10355. rightArm.Name = "Right Arm"
  10356. rightArm.Size = Vector3.new(1, 2, 1)
  10357. rightLeg.BottomSurface = "Smooth"
  10358. rightLeg.CanCollide = false
  10359. rightLeg.CFrame = torsoCFrame * CFrame.new(0.5, -2, 0)
  10360. rightLeg.FormFactor = "Symmetric"
  10361. rightLeg.Locked = true
  10362. rightLeg.Name = "Right Leg"
  10363. rightLeg.Size = Vector3.new(1, 2, 1)
  10364. rightLeg.TopSurface = "Smooth"
  10365. torso.CFrame = torsoCFrame
  10366. torso.FormFactor = "Symmetric"
  10367. torso.LeftSurface = "Weld"
  10368. torso.Locked = true
  10369. torso.RightSurface = "Weld"
  10370. torso.Name = "Torso"
  10371. torso.Size = Vector3.new(2, 2, 1)
  10372. rootPart.BottomSurface = "Smooth"
  10373. rootPart.BrickColor = BrickColor.Blue()
  10374. rootPart.CFrame = rootPartCFrame
  10375. rootPart.FormFactor = "Symmetric"
  10376. rootPart.LeftSurface = "Weld"
  10377. rootPart.Locked = true
  10378. rootPart.RightSurface = "Weld"
  10379. rootPart.Name = "HumanoidRootPart"
  10380. rootPart.Size = Vector3.new(2, 2, 1)
  10381. rootPart.TopSurface = "Smooth"
  10382. rootPart.Transparency = 1
  10383. soundFreeFalling.Archivable = false
  10384. soundFreeFalling.SoundId = "rbxasset://sounds/swoosh.wav"
  10385. soundGettingUp.Archivable = false
  10386. soundGettingUp.SoundId = "rbxasset://sounds/hit.wav"
  10387. soundRunning.Archivable = false
  10388. soundRunning.SoundId = "rbxasset://sounds/bfsl-minifigfoots1.mp3"
  10389. soundRunning.Looped = true
  10390. leftHip.C0 = CFrame.new(-1, -1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  10391. leftHip.C1 = CFrame.new(-0.5, 1, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  10392. leftHip.MaxVelocity = 0.1
  10393. leftHip.Name = "Left Hip"
  10394. leftHip.Part0 = torso
  10395. leftHip.Part1 = leftLeg
  10396. leftShoulder.C0 = CFrame.new(-1, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  10397. leftShoulder.C1 = CFrame.new(0.5, 0.5, 0, -0, -0, -1, 0, 1, 0, 1, 0, 0)
  10398. leftShoulder.MaxVelocity = 0.15
  10399. leftShoulder.Name = "Left Shoulder"
  10400. leftShoulder.Part0 = torso
  10401. leftShoulder.Part1 = leftArm
  10402. rightHip.C0 = CFrame.new(1, -1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  10403. rightHip.C1 = CFrame.new(0.5, 1, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  10404. rightHip.MaxVelocity = 0.1
  10405. rightHip.Name = "Right Hip"
  10406. rightHip.Part0 = torso
  10407. rightHip.Part1 = rightLeg
  10408. rightShoulder.C0 = CFrame.new(1, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  10409. rightShoulder.C1 = CFrame.new(-0.5, 0.5, 0, 0, 0, 1, 0, 1, 0, -1, -0, -0)
  10410. rightShoulder.MaxVelocity = 0.15
  10411. rightShoulder.Name = "Right Shoulder"
  10412. rightShoulder.Part0 = torso
  10413. rightShoulder.Part1 = rightArm
  10414. if prevLeftHip then
  10415. leftHip.CurrentAngle = prevLeftHip.CurrentAngle
  10416. leftHip.DesiredAngle = prevLeftHip.DesiredAngle
  10417. end
  10418. if prevLeftShoulder then
  10419. leftShoulder.CurrentAngle = prevLeftShoulder.CurrentAngle
  10420. leftShoulder.DesiredAngle = prevLeftShoulder.DesiredAngle
  10421. end
  10422. if prevRightHip then
  10423. rightHip.CurrentAngle = prevRightHip.CurrentAngle
  10424. rightHip.DesiredAngle = prevRightHip.DesiredAngle
  10425. end
  10426. if prevRightShoulder then
  10427. rightShoulder.CurrentAngle = prevRightShoulder.CurrentAngle
  10428. rightShoulder.DesiredAngle = prevRightShoulder.DesiredAngle
  10429. end
  10430. neck.C0 = CFrame.new(0, 1, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  10431. neck.C1 = CFrame.new(0, -0.5, 0, -1, -0, -0, 0, 0, 1, 0, 1, 0)
  10432. neck.Name = "Neck"
  10433. neck.Part0 = torso
  10434. neck.Part1 = head
  10435. rootJoint.C0 = CFrame.new(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
  10436. rootJoint.C1 = CFrame.new(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
  10437. rootJoint.Name = "RootJoint"
  10438. rootJoint.Part0 = rootPart
  10439. rootJoint.Part1 = torso
  10440. feetPart.BottomSurface = "Smooth"
  10441. feetPart.CanCollide = false
  10442. feetPart.CFrame = torsoCFrame * CFrame.new(0, -3.1, 0)
  10443. feetPart.FormFactor = "Custom"
  10444. feetPart.Locked = true
  10445. feetPart.Name = "Platform"
  10446. feetPart.Size = Vector3.new(1.8, 0.2, 0.8)
  10447. feetPart.TopSurface = "Smooth"
  10448. feetPart.Transparency = 1
  10449. feetWeld.C0 = CFrame.new(0, -3, 0)
  10450. feetWeld.C1 = CFrame.new(0, 0.1, 0)
  10451. feetWeld.Name = "PlatformWeld"
  10452. feetWeld.Part0 = torso
  10453. feetWeld.Part1 = feetPart
  10454. table.insert(connections, feetPart.Touched:connect(function(hit)
  10455. feetTouching[hit] = true
  10456. end))
  10457. table.insert(connections, feetPart.TouchEnded:connect(function(hit)
  10458. feetTouching[hit] = nil
  10459. end))
  10460. feetTouchInterest = feetPart:FindFirstChild("TouchInterest")
  10461. bodyGyro.D = 3250
  10462. bodyGyro.P = 400000
  10463. bodyGyro.maxTorque = Vector3.new(1000000000, 0, 1000000000)
  10464. bodyVelocity.P = 5000
  10465. bodyVelocity.maxForce = Vector3.new(0, 0, 0)
  10466. bodyVelocity.velocity = Vector3.new(0, 0, 0)
  10467. torsoLight = Instance.new("PointLight", torso)
  10468. torsoLight.Brightness = 0.4
  10469. torsoLight.Color = Color3.new(1, 1, 1)
  10470. torsoLight.Range = 16
  10471. torsoLight.Shadows = true
  10472. local ff1, ff2, ff3, ff4, ff5, ff6, ff7, ff8, ff9 = Instance.new("ForceField", head), Instance.new("ForceField", leftArm), Instance.new("ForceField", leftLeg), Instance.new("ForceField", rightArm), Instance.new("ForceField", rightLeg), Instance.new("ForceField", torso), Instance.new("ForceField", wildcardHandle), Instance.new("ForceField", feetPart), Instance.new("ForceField", rootPart)
  10473. local forcefields = {[ff1] = head, [ff2] = leftArm, [ff3] = leftLeg, [ff4] = rightArm, [ff5] = rightLeg, [ff6] = torso, [ff7] = wildcardHandle, [ff8] = feetPart, [ff9] = rootPart}
  10474. local objects = {[humanoid] = true, [head] = true, [leftArm] = true, [leftLeg] = true, [rightArm] = true, [rightLeg] = true, [torso] = true, [rootPart] = true, [rootJoint] = true, [soundFreeFalling] = true, [soundGettingUp] = true, [soundRunning] = true, [leftHip] = true, [leftShoulder] = true, [rightHip] = true, [rightShoulder] = true, [neck] = true, [feetPart] = true, [feetWeld] = true, [feetTouchInterest] = true, [bodyGyro] = true, [bodyVelocity] = true, [ff1] = true, [ff2] = true, [ff3] = true, [ff4] = true, [ff5] = true, [ff6] = true, [ff7] = true, [ff8] = true, [ff9] = true}
  10475. local tshirtUrl = appearance.tshirt
  10476. if tshirtUrl then
  10477. local tshirt = Instance.new("Decal", torso)
  10478. tshirt.Name = "roblox"
  10479. tshirt.Texture = tshirtUrl
  10480. objects[tshirt] = true
  10481. end
  10482. for _, template in ipairs(appearance.characterObjects) do
  10483. local object = template:Clone()
  10484. local newObjects = {object}
  10485. for _, object in ipairs(newObjects) do
  10486. objects[object] = true
  10487. for _, child in ipairs(object:GetChildren()) do
  10488. table.insert(newObjects, child)
  10489. end
  10490. end
  10491. if object:IsA("BodyColors") then
  10492. head.BrickColor = object.HeadColor
  10493. leftArm.BrickColor = object.LeftArmColor
  10494. leftLeg.BrickColor = object.LeftLegColor
  10495. rightArm.BrickColor = object.RightArmColor
  10496. rightLeg.BrickColor = object.RightLegColor
  10497. torso.BrickColor = object.TorsoColor
  10498. elseif object:IsA("Hat") then
  10499. local handle = object:FindFirstChild("Handle")
  10500. if handle and handle:IsA("BasePart") then
  10501. local weld = Instance.new("Weld", head)
  10502. weld.C0 = CFrame.new(0, 0.5, 0)
  10503. local attachmentPos = object.AttachmentPos
  10504. local attachmentRight = object.AttachmentRight
  10505. local attachmentUp = object.AttachmentUp
  10506. local attachmentForward = object.AttachmentForward
  10507. weld.C1 = CFrame.new(attachmentPos.X, attachmentPos.Y, attachmentPos.Z,
  10508. attachmentRight.X, attachmentUp.X, -attachmentForward.X,
  10509. attachmentRight.Y, attachmentUp.Y, -attachmentForward.Y,
  10510. attachmentRight.Z, attachmentUp.Z, -attachmentForward.Z)
  10511. weld.Name = "HeadWeld"
  10512. weld.Part0 = head
  10513. weld.Part1 = handle
  10514. handle.Parent = model
  10515. local antiGravity = Instance.new("BodyForce", handle)
  10516. antiGravity.force = Vector3.new(0, handle:GetMass() * 196.2, 0)
  10517. objects[object] = false
  10518. object.Parent = nil
  10519. objects[weld] = true
  10520. end
  10521. end
  10522. object.Parent = model
  10523. end
  10524. local facePresent = false
  10525. local headMeshPresent = false
  10526. for _, template in ipairs(appearance.headObjects) do
  10527. local object = template:Clone()
  10528. local newObjects = {object}
  10529. for _, object in ipairs(newObjects) do
  10530. objects[object] = true
  10531. for _, child in ipairs(object:GetChildren()) do
  10532. table.insert(newObjects, child)
  10533. end
  10534. end
  10535. if object:IsA("DataModelMesh") then
  10536. headMeshPresent = true
  10537. elseif object:IsA("Decal") then
  10538. facePresent = true
  10539. end
  10540. object.Parent = head
  10541. end
  10542. if not facePresent then
  10543. local face = Instance.new("Decal", head)
  10544. face.Texture = "rbxasset://textures/face.png"
  10545. objects[face] = true
  10546. end
  10547. if not headMeshPresent then
  10548. local headMesh = Instance.new("SpecialMesh", head)
  10549. headMesh.Scale = Vector3.new(1.25, 1.25, 1.25)
  10550. objects[headMesh] = true
  10551. end
  10552. table.insert(connections, model.DescendantAdded:connect(function(object)
  10553. local success, is_localscript = pcall(Game.IsA, object, "LocalScript")
  10554. if success and is_localscript then
  10555. pcall(Utility.SetProperty, object, "Disabled", true)
  10556. local changed_connection = pcall(object.Changed.connect, object.Changed, function(property)
  10557. if property == "Disabled" and not object.Disabled then
  10558. pcall(Utility.SetProperty, object, "Disabled", true)
  10559. object:Destroy()
  10560. end
  10561. end)
  10562. end
  10563. if not objects[object] then
  10564. object:Destroy()
  10565. end
  10566. end))
  10567. model.Parent = Workspace
  10568. Player.Character = model
  10569. Camera.CameraSubject = humanoid
  10570. Camera.CameraType = "Track"
  10571. Camera.CoordinateFrame = cameraCFrame
  10572. local IsStanding
  10573. local RegenerateHealth
  10574. local ResetCharacter
  10575. function IsStanding()
  10576. return not not next(feetTouching)
  10577. end
  10578. function RegenerateHealth()
  10579. if humanoid.Health < 1 then
  10580. humanoid.Health = 100
  10581. elseif not regeneratingHealth then
  10582. regeneratingHealth = true
  10583. local elapsedTime = wait(1)
  10584. regeneratingHealth = false
  10585. if humanoid.Health < 100 then
  10586. humanoid.Health = math.min(humanoid.Health + elapsedTime, 100)
  10587. end
  10588. end
  10589. end
  10590. function ResetCharacter()
  10591. for index, connection in ipairs(connections) do
  10592. connection:disconnect()
  10593. end
  10594. active = false
  10595. end
  10596. table.insert(connections, model.AncestryChanged:connect(ResetCharacter))
  10597. table.insert(connections, model.DescendantRemoving:connect(function(object)
  10598. local parent = forcefields[object]
  10599. if parent then
  10600. forcefields[object] = nil
  10601. local new_forcefield = Instance.new("ForceField")
  10602. forcefields[new_forcefield] = parent
  10603. objects[new_forcefield] = true
  10604. new_forcefield.Parent = parent
  10605. elseif objects[object] then
  10606. ResetCharacter()
  10607. end
  10608. end))
  10609. table.insert(connections, humanoid.HealthChanged:connect(RegenerateHealth))
  10610. table.insert(connections, humanoid.Climbing:connect(function() pose = "Climbing" end))
  10611. table.insert(connections, humanoid.FallingDown:connect(function(state) pose = "FallingDown" end))
  10612. table.insert(connections, humanoid.FreeFalling:connect(function(state) pose = "FreeFall" if state then soundFreeFalling:Play() else
  10613.  
  10614. soundFreeFalling:Pause() end end))
  10615. table.insert(connections, humanoid.GettingUp:connect(function(state) pose = "GettingUp" if state then soundGettingUp:Play() else
  10616.  
  10617. soundGettingUp:Pause() end end))
  10618. table.insert(connections, humanoid.PlatformStanding:connect(function() pose = "PlatformStanding" end))
  10619. table.insert(connections, humanoid.Seated:connect(function() pose = "Seated" end))
  10620. table.insert(connections, humanoid.Swimming:connect(function(speed) if speed > 0 then pose = "Swimming" else pose = "Standing" end end))
  10621. local previousRootPartCFrame = rootPart.CFrame
  10622. TaskScheduler.Start(function()
  10623. while active do
  10624. local totalTime = TaskScheduler.GetCurrentTime()
  10625. local stepTime = 1 / 60
  10626. if not PlayerControl.characterEnabled then
  10627. ResetCharacter()
  10628. break
  10629. end
  10630. torsoLight.Brightness = 0.5 + 0.15 * math.sin(totalTime * 0.75 * math.pi)
  10631. local featherfallEnabled = PlayerControl.IsFeatherfallEnabled()
  10632. local rootPartCFrame = rootPart.CFrame
  10633. if not jumpDebounce and UserInterface:IsKeyDown(Enum.KeyCode.Space) then
  10634. if humanoid.Sit then
  10635. humanoid.Sit = false
  10636. end
  10637. if IsStanding() then
  10638. jumpDebounce = true
  10639. pose = "Jumping"
  10640. rootPart.Velocity = Vector3.new(rootPart.Velocity.X, 50, rootPart.Velocity.Z)
  10641. torso.Velocity = Vector3.new(torso.Velocity.X, 50, torso.Velocity.Z)
  10642. TaskScheduler.Schedule(1, function()
  10643. if pose == "Jumping" then
  10644. pose = "FreeFall"
  10645. end
  10646. jumpDebounce = false
  10647. humanoid.Jump = false
  10648. end)
  10649. end
  10650. end
  10651. local cameraCFrame = Camera.CoordinateFrame
  10652. local cameraDirection = cameraCFrame.lookVector
  10653. if flying then
  10654. if PlayerControl.rolling then
  10655. local rootPartCFrame = rootPart.CFrame
  10656. local speed = (rootPartCFrame - rootPartCFrame.p):pointToObjectSpace(rootPart.Velocity).Y
  10657. local decay = 0.5 ^ stepTime
  10658. if math.abs(speed) <= 50 then
  10659. PlayerControl.rollingAngle = (((PlayerControl.rollingAngle + 0.5) % 1 - 0.5) * decay) % 1
  10660. PlayerControl.rollingOffset = PlayerControl.rollingOffset * decay
  10661. else
  10662. PlayerControl.rollingAngle = (PlayerControl.rollingAngle + stepTime * speed * PlayerControl.rollingSpeed) % 1
  10663. PlayerControl.rollingOffset = (PlayerControl.rollingOffset + PlayerControl.rollingMaxOffset * (1 / decay - 1)) * decay
  10664. end
  10665. rootJoint.C0 = (CFrame.new(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0) * CFrame.Angles(PlayerControl.rollingAngle * 2 * math.pi, 0, 0)) * CFrame.new(0, -PlayerControl.rollingOffset, 0)
  10666. else
  10667. rootJoint.C0 = CFrame.new(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
  10668. PlayerControl.rollingAngle = 0
  10669. PlayerControl.rollingOffset = 0
  10670. end
  10671. rightShoulder.MaxVelocity = 0.5
  10672. leftShoulder.MaxVelocity = 0.5
  10673. rightShoulder.DesiredAngle = 0
  10674. leftShoulder.DesiredAngle = 0
  10675. rightHip.DesiredAngle = 0
  10676. leftHip.DesiredAngle = 0
  10677. bodyGyro.D = 500
  10678. bodyGyro.P = 1e6
  10679. bodyGyro.maxTorque = Vector3.new(1e6, 1e6, 1e6)
  10680. bodyVelocity.P = 1250
  10681. bodyVelocity.maxForce = Vector3.new(1e6, 1e6, 1e6)
  10682. local movementRight = 0
  10683. local movementForward = 0
  10684. local movementUp = 0
  10685. if UserInterface:IsKeyDown(Enum.KeyCode.A) and not UserInterface:IsKeyDown(Enum.KeyCode.D) then
  10686. movementRight = -1
  10687. elseif UserInterface:IsKeyDown(Enum.KeyCode.D) then
  10688. movementRight = 1
  10689. end
  10690. if UserInterface:IsKeyDown(Enum.KeyCode.W) then
  10691. movementUp = 0.2
  10692. if not UserInterface:IsKeyDown(Enum.KeyCode.S) then
  10693. movementForward = -1
  10694. end
  10695. elseif UserInterface:IsKeyDown(Enum.KeyCode.S) then
  10696. movementForward = 1
  10697. end
  10698. local movement = PlayerControl.fly_acceleration * cameraCFrame:vectorToWorldSpace(Vector3.new(movementRight, movementUp, movementForward))
  10699. local previousMomentum = flyingMomentum
  10700. local previousTilt = flyingTilt
  10701. flyingMomentum = movement + flyingMomentum * (1 - PlayerControl.fly_acceleration / PlayerControl.fly_speed)
  10702. flyingTilt = ((flyingMomentum * Vector3.new(1, 0, 1)).unit:Cross((previousMomentum * Vector3.new(1, 0, 1)).unit)).Y
  10703. if flyingTilt ~= flyingTilt or flyingTilt == math.huge then
  10704. flyingTilt = 0
  10705. end
  10706. local absoluteTilt = math.abs(flyingTilt)
  10707. if absoluteTilt > 0.06 or absoluteTilt < 0.0001 then
  10708. if math.abs(previousTilt) > 0.0001 then
  10709. flyingTilt = previousTilt * 0.9
  10710. else
  10711. flyingTilt = 0
  10712. end
  10713. else
  10714. flyingTilt = previousTilt * 0.77 + flyingTilt * 0.25
  10715. end
  10716. previousTilt = flyingTilt
  10717. if flyingMomentum.magnitude < 0.1 then
  10718. flyingMomentum = Vector3.new(0, 0, 0)
  10719. -- bodyGyro.cframe = cameraCFrame
  10720. else
  10721. local momentumOrientation = CFrame.new(Vector3.new(0, 0, 0), flyingMomentum)
  10722. local tiltOrientation = CFrame.Angles(0, 0, -20 * flyingTilt)
  10723. bodyGyro.cframe = momentumOrientation * tiltOrientation * CFrame.Angles(-0.5 * math.pi * math.min(flyingMomentum.magnitude / PlayerControl.fly_speed, 1), 0, 0)
  10724. end
  10725. bodyVelocity.velocity = flyingMomentum + Vector3.new(0, 0.15695775618683547, 0)
  10726. rootPart.Velocity = flyingMomentum
  10727. previousMomentum = flyingMomentum
  10728. else
  10729. rootJoint.C0 = CFrame.new(0, 0, 0, -1, 0, 0, 0, 0, 1, 0, 1, 0)
  10730. PlayerControl.rollingAngle = 0
  10731. PlayerControl.rollingOffset = 0
  10732. bodyGyro.D = 3250
  10733. bodyGyro.P = 400000
  10734. bodyVelocity.P = 5000
  10735. local cameraDirection = cameraCFrame.lookVector
  10736. local walkDirection = Vector3.new(0, 0, 0)
  10737. local walkSpeed = 16
  10738. if UserInterface:IsKeyDown(Enum.KeyCode.W) then
  10739. if UserInterface:IsKeyDown(Enum.KeyCode.A) then
  10740. walkDirection = Vector3.new(cameraDirection.X + cameraDirection.Z, 0, cameraDirection.Z - cameraDirection.X).unit
  10741. elseif UserInterface:IsKeyDown(Enum.KeyCode.D) then
  10742. walkDirection = Vector3.new(cameraDirection.X - cameraDirection.Z, 0, cameraDirection.Z + cameraDirection.X).unit
  10743. else
  10744. walkDirection = Vector3.new(cameraDirection.X, 0, cameraDirection.Z).unit
  10745. end
  10746. elseif UserInterface:IsKeyDown(Enum.KeyCode.S) then
  10747. if UserInterface:IsKeyDown(Enum.KeyCode.A) then
  10748. walkDirection = Vector3.new(-cameraDirection.X + cameraDirection.Z, 0, -cameraDirection.Z - cameraDirection.X).unit
  10749. elseif UserInterface:IsKeyDown(Enum.KeyCode.D) then
  10750. walkDirection = Vector3.new(-cameraDirection.X - cameraDirection.Z, 0, -cameraDirection.Z + cameraDirection.X).unit
  10751. else
  10752. walkDirection = Vector3.new(-cameraDirection.X, 0, -cameraDirection.Z).unit
  10753. end
  10754. elseif UserInterface:IsKeyDown(Enum.KeyCode.A) then
  10755. walkDirection = Vector3.new(cameraDirection.Z, 0, -cameraDirection.X).unit
  10756. elseif UserInterface:IsKeyDown(Enum.KeyCode.D) then
  10757. walkDirection = Vector3.new(-cameraDirection.Z, 0, cameraDirection.X).unit
  10758. else
  10759. walkSpeed = 0
  10760. end
  10761. if walkSpeed ~= previousWalkSpeed then
  10762. if walkSpeed > 0 then
  10763. soundRunning:Play()
  10764. else
  10765. soundRunning:Pause()
  10766. end
  10767. end
  10768. if walkSpeed > 0 then
  10769. if pose ~= "Jumping" then
  10770. if IsStanding() then
  10771. pose = "Running"
  10772. else
  10773. pose = "FreeFall"
  10774. end
  10775. end
  10776. bodyGyro.cframe = CFrame.new(Vector3.new(), walkDirection)
  10777. bodyGyro.maxTorque = Vector3.new(1000000000, 1000000000, 1000000000)
  10778. bodyVelocity.maxForce = Vector3.new(1000000, maxForceY, 1000000)
  10779. else
  10780. if pose ~= "Jumping" then
  10781. if IsStanding() then
  10782. pose = "Standing"
  10783. else
  10784. pose = "FreeFall"
  10785. end
  10786. end
  10787. -- TODO: find and fix bug that causes torso to rotate back to some angle
  10788. bodyGyro.maxTorque = Vector3.new(1000000000, 1000000000, 1000000000) -- Vector3.new(1000000000, 0, 1000000000)
  10789. if PlayerControl.pushable then
  10790. bodyVelocity.maxForce = Vector3.new(0, 0, 0)
  10791. else
  10792. bodyVelocity.maxForce = Vector3.new(1000000, 0, 1000000)
  10793. end
  10794. end
  10795. if featherfallEnabled then
  10796. local velocity = rootPart.Velocity
  10797. if velocity.Y > 50 then
  10798. rootPart.Velocity = Vector3.new(velocity.X, 50, velocity.Z)
  10799. elseif velocity.Y < -50 then
  10800. rootPart.Velocity = Vector3.new(velocity.X, -50, velocity.Z)
  10801. end
  10802. local distanceVector = rootPartCFrame.p - previousRootPartCFrame.p
  10803. local offsetX, offsetY, offsetZ = distanceVector.X, distanceVector.Y, distanceVector.Z
  10804. local MAX_MOVEMENT = 50 * 0.03333333507180214
  10805. if offsetX > MAX_MOVEMENT then
  10806. offsetX = MAX_MOVEMENT
  10807. elseif offsetX < -MAX_MOVEMENT then
  10808. offsetX = -MAX_MOVEMENT
  10809. end
  10810. if offsetY > MAX_MOVEMENT then
  10811. offsetY = MAX_MOVEMENT
  10812. elseif offsetY < -MAX_MOVEMENT then
  10813. offsetY = -MAX_MOVEMENT
  10814. end
  10815. if offsetZ > MAX_MOVEMENT then
  10816. offsetZ = MAX_MOVEMENT
  10817. elseif offsetZ < -MAX_MOVEMENT then
  10818. offsetZ = -MAX_MOVEMENT
  10819. end
  10820. local offset = Vector3.new(offsetX, offsetY, offsetZ)
  10821. if offset ~= distanceVector then
  10822. rootPartCFrame = previousRootPartCFrame + offset
  10823. --rootPart.CFrame = rootPartCFrame
  10824. end
  10825. end
  10826. local walkingVelocity = walkDirection * walkSpeed
  10827. bodyVelocity.velocity = walkingVelocity
  10828. if not jumpDebounce and math.abs(rootPart.Velocity.Y) <= 0.1 then
  10829. rootPart.Velocity = Vector3.new(walkingVelocity.X, rootPart.Velocity.Y, walkingVelocity.Z)
  10830. end
  10831. previousWalkSpeed = walkSpeed
  10832. if pose == "Jumping" or jumpDebounce then
  10833. rightShoulder.MaxVelocity = 0.5
  10834. leftShoulder.MaxVelocity = 0.5
  10835. rightShoulder.DesiredAngle = 3.14
  10836. leftShoulder.DesiredAngle = -3.14
  10837. rightHip.DesiredAngle = 0
  10838. leftHip.DesiredAngle = 0
  10839. elseif pose == "FreeFall" then
  10840. rightShoulder.MaxVelocity = 0.5
  10841. leftShoulder.MaxVelocity = 0.5
  10842. rightShoulder.DesiredAngle = 3.14
  10843. leftShoulder.DesiredAngle = -3.14
  10844. rightHip.DesiredAngle = 0
  10845. leftHip.DesiredAngle = 0
  10846. elseif pose == "Seated" then
  10847. rightShoulder.MaxVelocity = 0.15
  10848. leftShoulder.MaxVelocity = 0.15
  10849. rightShoulder.DesiredAngle = 3.14 / 2
  10850. leftShoulder.DesiredAngle = -3.14 / 2
  10851. rightHip.DesiredAngle = 3.14 / 2
  10852. leftHip.DesiredAngle = -3.14 / 2
  10853. else
  10854. local climbFudge = 0
  10855. local amplitude
  10856. local frequency
  10857. if pose == "Running" then
  10858. rightShoulder.MaxVelocity = 0.15
  10859. leftShoulder.MaxVelocity = 0.15
  10860. amplitude = 1
  10861. frequency = 9
  10862. elseif (pose == "Climbing") then
  10863. rightShoulder.MaxVelocity = 0.5
  10864. leftShoulder.MaxVelocity = 0.5
  10865. amplitude = 1
  10866. frequency = 9
  10867. climbFudge = 3.14
  10868. else
  10869. amplitude = 0.1
  10870. frequency = 1
  10871. end
  10872. local desiredAngle = amplitude * math.sin(totalTime * frequency)
  10873. rightShoulder.DesiredAngle = desiredAngle + climbFudge
  10874. leftShoulder.DesiredAngle = desiredAngle - climbFudge
  10875. rightHip.DesiredAngle = -desiredAngle
  10876. leftHip.DesiredAngle = -desiredAngle
  10877. end
  10878. end
  10879. previousRootPartCFrame = rootPartCFrame
  10880. RunService.RenderStepped:wait()
  10881. end
  10882. if model.Parent ~= nil then
  10883. model.Parent = nil
  10884. end
  10885. PlayerControl.CreateCharacter()
  10886. end)
  10887. humanoid.Health = 100
  10888. character = model
  10889. chatAdornee = head
  10890. elseif characterMode == "pyramid" then
  10891. if PlayerControl.characterEnabled then
  10892. Camera.CameraType = "Fixed"
  10893. PyramidCharacter.camera_distance = (Camera.Focus.p - Camera.CoordinateFrame.p).magnitude
  10894. PyramidCharacter.camera_position = Camera.Focus.p
  10895. PyramidCharacter.Teleport(Camera.Focus.p)
  10896. PyramidCharacter.visible = true
  10897. Player.Character = nil
  10898. else
  10899. PyramidCharacter.visible = false
  10900. end
  10901. end
  10902. end
  10903. function PlayerControl.GetCharacter()
  10904. return character
  10905. end
  10906. function PlayerControl.GetHead()
  10907. local characterMode = PlayerControl.characterMode
  10908. if characterMode == "normal" then
  10909. return head
  10910. elseif characterMode == "pyramid" then
  10911. return PyramidCharacter.core
  10912. end
  10913. end
  10914. function PlayerControl.GetHumanoid()
  10915. return humanoid
  10916. end
  10917. function PlayerControl.GetRootPart()
  10918. return rootPart
  10919. end
  10920. function PlayerControl.GetTorso()
  10921. return torso
  10922. end
  10923. function PlayerControl.IsEnabled()
  10924. return PlayerControl.characterEnabled
  10925. end
  10926. function PlayerControl.IsFeatherfallEnabled()
  10927. return PlayerControl.featherfallEnabled
  10928. end
  10929. function PlayerControl.IsPushable()
  10930. return PlayerControl.pushable
  10931. end
  10932. function PlayerControl.IsRolling()
  10933. return PlayerControl.rolling
  10934. end
  10935. function PlayerControl.ResetCharacter()
  10936. if character and character.Parent then
  10937. character.Parent = nil
  10938. end
  10939. PyramidCharacter.visible = false
  10940. end
  10941. function PlayerControl.SetEnabled(state, no_animation)
  10942. state = not not state
  10943. if state ~= PlayerControl.characterEnabled then
  10944. PlayerControl.characterEnabled = state
  10945. local characterMode = PlayerControl.characterMode
  10946. if characterMode == "normal" then
  10947. local torso = PlayerControl.GetRootPart()
  10948. local rootPart = PlayerControl.GetRootPart()
  10949. if rootPart then
  10950. if PlayerControl.characterEnabled then
  10951. local torso_cframe = Camera.Focus:toWorldSpace(PlayerControl.hide_torso_object_cframe)
  10952. PlayerControl.torso_cframe = torso_cframe
  10953. torso.CFrame = torso_cframe
  10954. rootPart.CFrame = torso_cframe
  10955. else
  10956. PlayerControl.hide_torso_object_cframe = Camera.Focus:toObjectSpace(rootPart.CFrame)
  10957. end
  10958. else
  10959. PlayerControl.torso_cframe = Camera.Focus
  10960. end
  10961. if PlayerControl.characterEnabled then
  10962. PlayerControl.CreateCharacter()
  10963. RunService.Stepped:wait()
  10964. coroutine.yield()
  10965. if not no_animation then
  10966. GraphicalEffects.CrystalRing({base_part = PlayerControl.GetTorso(), crystal_color = BrickColor.new("Institutional white"), float_duration = 2})
  10967. end
  10968. else
  10969. Player.Character = nil
  10970. Camera.CameraType = "Fixed"
  10971. if not no_animation then
  10972. GraphicalEffects.CrystalRing({position = PlayerControl.GetTorso().Position, crystal_color = BrickColor.new("Institutional white"), float_duration = 2})
  10973. end
  10974. end
  10975. else
  10976. if state then
  10977. PlayerControl.CreateCharacter()
  10978. RunService.Stepped:wait()
  10979. coroutine.yield()
  10980. if not no_animation then
  10981. GraphicalEffects.CrystalRing({base_part = PyramidCharacter.core, crystal_color = BrickColor.new("Institutional white"), float_duration = 2})
  10982. end
  10983. else
  10984. PyramidCharacter.visible = false
  10985. if not no_animation then
  10986. GraphicalEffects.CrystalRing({position = PyramidCharacter.core.Position, crystal_color = BrickColor.new("Institutional white"), float_duration = 2})
  10987. end
  10988. end
  10989. end
  10990. end
  10991. end
  10992. function PlayerControl.SetFeatherfallEnabled(state)
  10993. state = not not state
  10994. if state ~= PlayerControl.featherfallEnabled then
  10995. PlayerControl.featherfallEnabled = state
  10996. if state then
  10997. Logger.print("Info", "Featherfall enabled in PlayerControl")
  10998. else
  10999. Logger.print("Info", "Featherfall disabled in PlayerControl")
  11000. end
  11001. end
  11002. end
  11003. function PlayerControl.SetPushable(state)
  11004. state = not not state
  11005. if state ~= PlayerControl.pushable then
  11006. PlayerControl.pushable = state
  11007. if state then
  11008. Logger.print("Info", "Pushing enabled in PlayerControl")
  11009. else
  11010. Logger.print("Info", "Pushing disabled in PlayerControl")
  11011. end
  11012. end
  11013. end
  11014. function PlayerControl.SetRolling(state)
  11015. state = not not state
  11016. if state ~= PlayerControl.rolling then
  11017. PlayerControl.rolling = state
  11018. if state then
  11019. Logger.print("Info", "Rolling fly mode enabled in PlayerControl")
  11020. else
  11021. Logger.print("Info", "Rolling fly mode disabled in PlayerControl")
  11022. end
  11023. end
  11024. end
  11025. function PlayerControl.StartFlying()
  11026. PlayerControl.fly_speed = PlayerControl.fly_basespeed
  11027. if torso then
  11028. flyingMomentum = torso.Velocity + torso.CFrame.lookVector * 3 + Vector3.new(0, 10, 0)
  11029. else
  11030. flyingMomentum = Vector3.new()
  11031. end
  11032. flyingTilt = 0
  11033. flying = true
  11034. end
  11035. function PlayerControl.StopFlying()
  11036. if bodyGyro.cframe then
  11037. local lookVector = bodyGyro.cframe.lookVector
  11038. if lookVector.X ~= 0 or lookVector.Z ~= 0 then
  11039. bodyGyro.cframe = CFrame.new(Vector3.new(), Vector3.new(lookVector.X, 0, lookVector.Z))
  11040. end
  11041. end
  11042. flying = false
  11043. end
  11044. local previousTime = 0
  11045.  
  11046. ControllerCommands = {};
  11047.  
  11048. ControllerCommands = {};
  11049.  
  11050. ControllerCommands.BALEFIRE_SPEED = 40
  11051. function ControllerCommands.BalefireAtMouse()
  11052. local head = chatAdornee
  11053. if head then
  11054. local target = Mouse.Hit.p
  11055. local origin = head.Position
  11056. local direction = (target - origin).unit
  11057. local explosionCount = 0
  11058. local animation_frame = 0
  11059. local magic_circle_position = origin + direction * 4
  11060. local magic_circle_cframe = CFrame.new(magic_circle_position, magic_circle_position + direction)
  11061. local magic_circle_part = Instance.new("Part")
  11062. local magic_circle_mesh = Instance.new("BlockMesh", magic_circle_part)
  11063. local magic_circle_light = Instance.new("PointLight", magic_circle_part)
  11064. local magic_circle_decal_back = Instance.new("Decal", magic_circle_part)
  11065. local magic_circle_decal_front = Instance.new("Decal", magic_circle_part)
  11066. magic_circle_part.Anchored = true
  11067. magic_circle_part.Archivable = false
  11068. magic_circle_part.BottomSurface = "Smooth"
  11069. magic_circle_part.CanCollide = false
  11070. magic_circle_part.CFrame = magic_circle_cframe
  11071. magic_circle_part.FormFactor = "Custom"
  11072. magic_circle_part.Locked = true
  11073. magic_circle_part.Size = Vector3.new(0.2, 0.2, 0.2)
  11074. magic_circle_part.TopSurface = "Smooth"
  11075. magic_circle_part.Transparency = 1
  11076. magic_circle_mesh.Scale = Vector3.new(60, 60, 0)
  11077. magic_circle_light.Color = Color3.new(1, 0.5, 1)
  11078. magic_circle_light.Range = 16
  11079. magic_circle_light.Shadows = true
  11080. magic_circle_decal_back.Face = "Back"
  11081. magic_circle_decal_back.Texture = "rbxassetid://122610943"
  11082. magic_circle_decal_front.Face = "Front"
  11083. magic_circle_decal_front.Texture = "rbxassetid://122610943"
  11084. local function NextExplosion()
  11085. explosionCount = explosionCount + 1
  11086. Instance.new("Explosion", Workspace).Position = origin + direction * (explosionCount * 8 + 4)
  11087. end
  11088. local function AnimateMagicCircle()
  11089. animation_frame = animation_frame + 1
  11090. local transparency = (animation_frame / 40) ^ 3
  11091. if animation_frame == 40 then
  11092. pcall(Game.Destroy, magic_circle_part)
  11093. else
  11094. if magic_circle_part.Parent ~= Workspace then
  11095. pcall(Utility.SetProperty, magic_circle_part, "Parent", Workspace)
  11096. end
  11097. head = PlayerControl.GetHead()
  11098. if head then
  11099. magic_circle_position = head.Position + direction * 4
  11100. end
  11101. magic_circle_part.CFrame = CFrame.new(magic_circle_position, magic_circle_position + direction) * CFrame.Angles(0, 0,
  11102.  
  11103. math.tau * animation_frame / 40 * 1.5)
  11104. magic_circle_light.Brightness = 1 - transparency
  11105. magic_circle_decal_back.Transparency = transparency
  11106. magic_circle_decal_front.Transparency = transparency
  11107. end
  11108. end
  11109. magic_circle_part.Parent = Workspace
  11110. for i = 1, 40 do
  11111. Delay((i - 1) / ControllerCommands.BALEFIRE_SPEED, NextExplosion)
  11112. Delay((i - 1) / 30, AnimateMagicCircle)
  11113. end
  11114. for i = 1, 20 do
  11115. Delay((i - 1) / ControllerCommands.BALEFIRE_SPEED, NextExplosion)
  11116. end
  11117. end
  11118. end
  11119. function ControllerCommands.ControlRandomDummy()
  11120. local dummies = {}
  11121. local numDummies = 0
  11122. for _, character in ipairs(Workspace:GetChildren()) do
  11123. local name = tostring(character)
  11124. if name == "???" or name == "Dummy" then
  11125. local head, humanoid
  11126. for _, child in ipairs(character:GetChildren()) do
  11127. local className = child.ClassName
  11128. if className == "Part" and tostring(child) == "Head" then
  11129. head = child
  11130. if humanoid then
  11131. break
  11132. end
  11133. elseif className == "Humanoid" then
  11134. if child.Health > 0 then
  11135. humanoid = child
  11136. if head then
  11137. break
  11138. end
  11139. else
  11140. break
  11141. end
  11142. end
  11143. end
  11144. if head and humanoid then
  11145. numDummies = numDummies + 1
  11146. dummies[numDummies] = {character, head, humanoid}
  11147. end
  11148. end
  11149. end
  11150. if numDummies > 0 then
  11151. local dummy = dummies[math.random(numDummies)]
  11152. Player.Character = dummy[1]
  11153. chatAdornee = dummy[2]
  11154. Camera.CameraSubject = dummy[3]
  11155. Camera.CameraType = "Track"
  11156. end
  11157. end
  11158. function ControllerCommands.Decalify(textures, exclusion)
  11159. local objects = Workspace:GetChildren()
  11160. for _, object in ipairs(objects) do
  11161. if not exclusion[object] then
  11162. for _, child in ipairs(object:GetChildren()) do
  11163. objects[#objects + 1] = child
  11164. end
  11165. if object:IsA("BasePart") then
  11166. local texture = textures[math.random(#textures)]
  11167. local face_left = Instance.new("Decal", object)
  11168. face_left.Face = Enum.NormalId.Left
  11169. face_left.Texture = texture
  11170. local face_right = Instance.new("Decal", object)
  11171. face_right.Face = Enum.NormalId.Right
  11172. face_right.Texture = texture
  11173. local face_bottom = Instance.new("Decal", object)
  11174. face_bottom.Face = Enum.NormalId.Bottom
  11175. face_bottom.Texture = texture
  11176. local face_top = Instance.new("Decal", object)
  11177. face_top.Face = Enum.NormalId.Top
  11178. face_top.Texture = texture
  11179. local face_front = Instance.new("Decal", object)
  11180. face_front.Face = Enum.NormalId.Front
  11181. face_front.Texture = texture
  11182. local face_back = Instance.new("Decal", object)
  11183. face_back.Face = Enum.NormalId.Back
  11184. face_back.Texture = texture
  11185. end
  11186. end
  11187. end
  11188. end
  11189.  
  11190. function ControllerCommands.ExplodeAtMouse()
  11191. local explosion = Instance.new("Explosion")
  11192. explosion.Position = Mouse.Hit.p
  11193. explosion.Parent = Workspace
  11194. end
  11195. function ControllerCommands.LaserAtMouse()
  11196. GraphicalEffects.ShootLaserOfDeath(Mouse.Hit.p)
  11197. end
  11198. function ControllerCommands.BigLaser(target)
  11199. GraphicalEffects.ShootLaserOfDeath(target, {brickcolor = BrickColor.new("New Yeller"), duration = 80, fragmentation_size = 6,laser_scale = 30, light_color = Color3.new(1, 0.5, 0), magic_circle_image = "rbxassetid://126561317", magic_circle_scale = 1.5, sound_volume = 1,special_effects = BrickColor.new("Deep orange"), stay = 2})
  11200. end
  11201. function ControllerCommands.BigLaserAtMouse()
  11202. ControllerCommands.BigLaser(Mouse.Hit.p)
  11203. end
  11204. function ControllerCommands.ShootMissile(targetPart, pointOnPart, direction)
  11205. GraphicalEffects.ShootMissile(targetPart, pointOnPart, direction)
  11206. end
  11207. function ControllerCommands.ShootMissileAtMouse(amount, spread, delayTime)
  11208. local exclusionList = {}
  11209. local playerHead = PlayerControl.GetHead()
  11210. local playerTorso = PlayerControl.GetTorso()
  11211. if playerHead and playerTorso then
  11212. exclusionList[playerTorso] = true
  11213. local humanoid, torso = Utility.FindHumanoidClosestToRay(Mouse.UnitRay, exclusionList)
  11214. local targetPart, pointOnPart
  11215. if humanoid and torso then
  11216. targetPart, pointOnPart = torso, Vector3.new()
  11217. else
  11218. local target = Mouse.Target
  11219. if target then
  11220. targetPart, pointOnPart = target, target.CFrame:pointToObjectSpace(Mouse.Hit.p)
  11221. else
  11222. return
  11223. end
  11224. end
  11225. if targetPart then
  11226. local direction = (Mouse.Hit.p - playerHead.Position).unit
  11227. delayTime = delayTime or 0
  11228. for index = 1, amount do
  11229. local angles = math.tau * (index - 0.5) * spread / amount * Vector3.new(math.random() - 0.5, math.random() - 0.5,math.random() - 0.5).unit
  11230. TaskScheduler.Schedule(delayTime * (index - 1), ControllerCommands.ShootMissile, targetPart, pointOnPart, CFrame.Angles(angles.X, angles.Y, angles.Z) * direction)
  11231. end
  11232. end
  11233. end
  11234. end
  11235. function ControllerCommands.ShootMissileAroundMouse(amount, offset, delayTime)
  11236. local exclusionList = {}
  11237. local playerHead = PlayerControl.GetHead()
  11238. local playerTorso = PlayerControl.GetTorso()
  11239. if playerHead and playerTorso then
  11240. exclusionList[playerTorso] = true
  11241. local humanoid, torso = Utility.FindHumanoidClosestToRay(Mouse.UnitRay, exclusionList)
  11242. local targetPart, pointOnPart
  11243. if humanoid and torso then
  11244. targetPart, pointOnPart = torso, Vector3.new()
  11245. else
  11246. local target = Mouse.Target
  11247. if target then
  11248. targetPart, pointOnPart = target, target.CFrame:pointToObjectSpace(Mouse.Hit.p)
  11249. else
  11250. return
  11251. end
  11252. end
  11253. if targetPart then
  11254. delayTime = delayTime or 0
  11255. local index = 1
  11256. local targetPoint = targetPart.CFrame * pointOnPart
  11257. local rotation_offset_angles = math.tau * Vector3.new(math.random() - 0.5, math.random() - 0.5, 0).unit
  11258. local rotation_offset = CFrame.Angles(rotation_offset_angles.x, rotation_offset_angles.y, 0)
  11259. local angle_x = 0
  11260. local angle_x_step = math.tau / math.phi
  11261. for i = 1, 8 * amount do
  11262. angle_x = angle_x + angle_x_step
  11263. local direction = rotation_offset * (CFrame.Angles(0, math.tau * index / amount, 0) * CFrame.Angles(angle_x, 0,0).lookVector)
  11264. local blocked = Workspace:FindPartOnRay(Ray.new(targetPoint, direction * offset), targetPart.Parent)
  11265. if not blocked then
  11266. local p0, p1, p2, p3 = targetPart, pointOnPart, direction, offset; GraphicalEffects.ShootMissile(p0, p1, p2, function() return p0 end, p3, true)
  11267. index = index + 1
  11268. if index > amount then
  11269. break
  11270. end
  11271. end
  11272. end
  11273. end
  11274. end
  11275. end
  11276.  
  11277. function ControllerCommands.HugeExplosionOfDoom(position)
  11278. local connections = {}
  11279. local parts = {}
  11280. local cframe = CFrame.new(position)
  11281. local function ExplosionHit(part)
  11282. if part:GetMass() < 10000 and part.Parent ~= Camera then
  11283. parts[part] = true
  11284. part.Anchored = true
  11285. part:BreakJoints()
  11286. part.BrickColor = BrickColor.new("Instituational white")
  11287. end
  11288. end
  11289. for i = 1, 4 do
  11290. local quantity = 0.5 * i * (1 + i)
  11291. local fraction = math.tau / quantity
  11292. for x = 1, quantity do
  11293. for y = 1, quantity do
  11294. local explosion = Instance.new("Explosion")
  11295. connections[#connections + 1] = explosion.Hit:connect(ExplosionHit)
  11296. explosion.BlastRadius = 5
  11297. explosion.Position = cframe * (CFrame.Angles(fraction * x, fraction * y, 0) * Vector3.new((i - 1) * 6, 0, 0))
  11298. explosion.Parent = Workspace
  11299. end
  11300. end
  11301. wait(0.075)
  11302. end
  11303. for part in pairs(parts) do
  11304. for _, child in ipairs(part:GetChildren()) do
  11305. if child:IsA("BodyMover") then
  11306. child:Destroy()
  11307. end
  11308. end
  11309. local mass = part:GetMass()
  11310. local velocity = CFrame.Angles(math.tau * math.random(), math.tau * math.random(), 0) * Vector3.new(25, 0, 0)
  11311. local bodythrust = Instance.new("BodyThrust")
  11312. bodythrust.force = mass * -velocity
  11313. bodythrust.Parent = part
  11314. local bodyforce = Instance.new("BodyForce")
  11315. bodyforce.force = mass * Vector3.new(0, 196.2, 0)
  11316. bodyforce.Parent = part
  11317. part.Anchored = false
  11318. part.Reflectance = 1
  11319. part.RotVelocity = math.tau * Vector3.new(math.random() - 0.5, math.random() - 0.5, math.random() - 0.5)
  11320. part.Transparency = 0.5
  11321. part.Velocity = (part.CFrame - part.Position) * velocity
  11322. end
  11323. for _, connection in ipairs(connections) do
  11324. connection:disconnect()
  11325. end
  11326. for i = 0, 99 do
  11327. Delay(i / 10, function()
  11328. for part in pairs(parts) do
  11329. local new_transparency = 0.5 * (1 + i / 50)
  11330. part.Reflectance = 0.98 * part.Reflectance
  11331. if new_transparency > part.Transparency then
  11332. part.Transparency = new_transparency
  11333. end
  11334. end
  11335. end)
  11336. end
  11337. Delay(10, function()
  11338. for part in pairs(parts) do
  11339. pcall(part.Destroy, part)
  11340. end
  11341. end)
  11342. end
  11343. function ControllerCommands.HugeExplosionOfDoomAtMouse()
  11344. ControllerCommands.HugeExplosionOfDoom(Mouse.Hit.p)
  11345. end
  11346.  
  11347. function ControllerCommands.SpaceHyperBeam(asd)
  11348. GraphicalEffects.SpaceHyperBeam(asd)
  11349. end
  11350. function ControllerCommands.SpaceHyperBeamAtMouse()
  11351. ControllerCommands.SpaceHyperBeam(Mouse.Hit.p)
  11352. end
  11353. function ControllerCommands.ConcentratedSpaceHyperBeamAtMouse()
  11354. local p = Mouse.Hit.p; for i = 1, 50 do GraphicalEffects.SpaceHyperBeam(p) end
  11355. end
  11356.  
  11357. function ControllerCommands.TeleportCharacterToMouse()
  11358. if PlayerControl.IsEnabled() then
  11359. local torso = PlayerControl.GetTorso()
  11360. if torso then
  11361. local pos = Mouse.Hit.p + Vector3.new(0, 5, 0)
  11362. torso.CFrame = CFrame.new(pos, pos + torso.CFrame.lookVector)
  11363. end
  11364. else
  11365. local new_focus_position = Mouse.Hit.p
  11366. local direction_vector = Camera.CoordinateFrame.lookVector
  11367. local new_focus = CFrame.new(new_focus_position, new_focus_position + direction_vector)
  11368. Camera.CoordinateFrame = new_focus * CFrame.new(0, 0, 25)
  11369. Camera.Focus = new_focus
  11370. end
  11371. end
  11372.  
  11373. AdvancedGUI = {};
  11374.  
  11375. if not AdvancedGUI.GUI_BASE_COLOR then
  11376. AdvancedGUI.GUI_BASE_COLOR = Color3.new(0, 0, 0)
  11377. end
  11378. function AdvancedGUI.GenerateChatColor(speakerName)
  11379. local chatColor = ChatColor.Get(speakerName).Color
  11380. local brightness = chatColor.r + chatColor.g + chatColor.b
  11381. if brightness < 1.5 then
  11382. chatColor = Color3.new(math.min(1, 0.4 + chatColor.r), math.min(1, 0.4 + chatColor.g), math.min(1, 0.4 + chatColor.b))
  11383. else
  11384. chatColor = Color3.new(math.min(1, 0.05 + chatColor.r), math.min(1, 0.05 + chatColor.g), math.min(1, 0.05 + chatColor.b))
  11385. end
  11386. return chatColor
  11387. end
  11388. GuiBase = {}
  11389. GuiBase.__index = GuiBase
  11390. function GuiBase:new(data)
  11391. local instance = setmetatable({}, self)
  11392. instance:Init(data)
  11393. return instance
  11394. end
  11395. function GuiBase:Destroy()
  11396. if self.parent then
  11397. self.parent.children[self] = nil
  11398. end
  11399. for child in pairs(self.children) do
  11400. child:Destroy()
  11401. end
  11402. self.m_base_instance:Destroy()
  11403. end
  11404. function GuiBase:GetContentInstance(child)
  11405. return self.m_base_instance
  11406. end
  11407. function GuiBase:Init()
  11408. self.children = {}
  11409. end
  11410. function GuiBase:IsA(className)
  11411. return className == "GuiBase"
  11412. end
  11413. function GuiBase:SetParent(parent)
  11414. if parent ~= self.parent then
  11415. if self.parent then
  11416. self.parent.children[self] = nil
  11417. end
  11418. self.parent = parent
  11419. if parent then
  11420. parent.children[self] = true
  11421. self.m_base_instance.Parent = parent:GetContentInstance()
  11422. else
  11423. self.m_base_instance.Parent = nil
  11424. end
  11425. end
  11426. end
  11427. GuiObject = setmetatable({}, GuiBase)
  11428. GuiObject.__index = GuiObject
  11429. function GuiObject:Destroy()
  11430. self.DragBegin:disconnect()
  11431. self.DragMove:disconnect()
  11432. self.DragStopped:disconnect()
  11433. self.MouseButton1Click:disconnect()
  11434. self.MouseButton1Down:disconnect()
  11435. self.MouseButton1Up:disconnect()
  11436. self.MouseButton2Down:disconnect()
  11437. self.MouseButton2Up:disconnect()
  11438. self.MouseEnter:disconnect()
  11439. self.MouseLeave:disconnect()
  11440. GuiBase.Destroy(self)
  11441. end
  11442. function GuiObject:GetAbsolutePosition()
  11443. return self.m_base_instance.AbsolutePosition
  11444. end
  11445. function GuiObject:GetAbsoluteSize()
  11446. return self.m_base_instance.AbsoluteSize
  11447. end
  11448. function GuiObject:GetPosition()
  11449. return self.position
  11450. end
  11451. function GuiObject:GetSize()
  11452. return self.size
  11453. end
  11454. function GuiObject:Init()
  11455. GuiBase.Init(self)
  11456. self.mouseDown = false
  11457. self.mouseOver = false
  11458. self.DragBegin = RbxUtility.CreateSignal()
  11459. self.DragMove = RbxUtility.CreateSignal()
  11460. self.DragStopped = RbxUtility.CreateSignal()
  11461. self.MouseButton1Click = RbxUtility.CreateSignal()
  11462. self.MouseButton1Down = RbxUtility.CreateSignal()
  11463. self.MouseButton1Up = RbxUtility.CreateSignal()
  11464. self.MouseButton2Down = RbxUtility.CreateSignal()
  11465. self.MouseButton2Up = RbxUtility.CreateSignal()
  11466. self.MouseEnter = RbxUtility.CreateSignal()
  11467. self.MouseLeave = RbxUtility.CreateSignal()
  11468. end
  11469. function GuiObject:IsA(className)
  11470. return className == "GuiObject" or GuiBase.IsA(self, className)
  11471. end
  11472. function GuiObject:SetActive(active)
  11473. if active ~= self.active then
  11474. self.active = active
  11475. end
  11476. end
  11477. function GuiObject:SetBackgroundTransparency(backgroundTransparency)
  11478. if backgroundTransparency ~= self.backgroundTransparency then
  11479. self.backgroundTransparency = backgroundTransparency
  11480. self.m_base_instance.BackgroundTransparency = backgroundTransparency
  11481. end
  11482. end
  11483. function GuiObject:SetColor(color)
  11484. if color ~= self.color then
  11485. self.color = color
  11486. self.m_base_instance.BackgroundColor3 = color
  11487. end
  11488. end
  11489. function GuiObject:SetPosition(position)
  11490. if position ~= self.position then
  11491. self.position = position
  11492. self.m_base_instance.Position = position
  11493. end
  11494. end
  11495. function GuiObject:SetSize(size)
  11496. if size ~= self.size then
  11497. self.size = size
  11498. self.m_base_instance.Size = size
  11499. end
  11500. end
  11501. function GuiObject:SetVisible(visible)
  11502. if visible ~= self.visible then
  11503. self.visible = visible
  11504. self.m_base_instance.Visible = visible
  11505. end
  11506. end
  11507. function GuiObject:SetZIndex(zIndex)
  11508. local stack = {self.m_base_instance}
  11509. repeat
  11510. local object = stack[#stack]
  11511. stack[#stack] = nil
  11512. for _, child in ipairs(object:GetChildren()) do
  11513. stack[#stack + 1] = child
  11514. end
  11515. object.ZIndex = zIndex
  11516. until #stack == 0
  11517. end
  11518. GuiServiceClass = setmetatable({}, GuiBase)
  11519. GuiServiceClass.__index = GuiServiceClass
  11520. function GuiServiceClass:CreateTextArea(text, font, fontSize, textColor3, textXAlignment, textYAlignment, maxWidth, minWidth)
  11521. local totalHeight = 0
  11522. local frame = Instance.new("Frame")
  11523. frame.BackgroundTransparency = 1
  11524. local label = Instance.new("TextLabel")
  11525. label.BackgroundTransparency = 1
  11526. label.Font = font
  11527. label.FontSize = fontSize
  11528. label.TextColor3 = textColor3
  11529. label.TextTransparency = 1
  11530. label.TextWrapped = true
  11531. label.TextXAlignment = textXAlignment
  11532. label.TextYAlignment = textYAlignment
  11533. label.Parent = self.guiFrame
  11534. local index = 1
  11535. while true do
  11536. local length = #text - index + 1
  11537. if length > 1024 then
  11538. length = 1024
  11539. local textBlock = string.sub(text, index, index + length - 1)
  11540. label.Text = textBlock
  11541. local height = 0
  11542. local width = maxWidth
  11543. repeat
  11544. height = height + 20
  11545. label.Size = UDim2.new(0, width, 0, height)
  11546. until label.TextFits
  11547. repeat
  11548. height = height - 1
  11549. label.Size = UDim2.new(0, width, 0, height)
  11550. until not label.TextFits
  11551. repeat
  11552. length = length - 10
  11553. label.Text = string.sub(text, index, index + length - 1)
  11554. until label.TextFits
  11555. repeat
  11556. length = length + 1
  11557. label.Text = string.sub(text, index, index + length - 1)
  11558. until not label.TextFits
  11559. local overflowCharacter = string.sub(text, index + length - 1, index + length - 1)
  11560. length = length - 1
  11561. label.Text = string.sub(text, index, index + length - 1)
  11562. if overflowCharacter == "\n" then
  11563. index = index + 1
  11564. end
  11565. repeat
  11566. height = height - 1
  11567. label.Size = UDim2.new(0, width, 0, height)
  11568. until not label.TextFits
  11569. height = height + 1
  11570. local blockLabel = label:Clone()
  11571. blockLabel.Position = UDim2.new(0, 0, 0, totalHeight)
  11572. blockLabel.Size = UDim2.new(1, 0, 0, height)
  11573. blockLabel.Parent = frame
  11574. totalHeight = totalHeight + height
  11575. index = index + length
  11576. else
  11577. local textBlock = string.sub(text, index)
  11578. label.Text = textBlock
  11579. local height = 0
  11580. local width = maxWidth
  11581. repeat
  11582. height = height + 20
  11583. label.Size = UDim2.new(0, width, 0, height)
  11584. until label.TextFits
  11585. repeat
  11586. height = height - 1
  11587. label.Size = UDim2.new(0, width, 0, height)
  11588. until not label.TextFits
  11589. height = height + 1
  11590. if index == 1 then
  11591. repeat
  11592. width = width - 10
  11593. label.Size = UDim2.new(0, width, 0, height)
  11594. until width < minWidth or not label.TextFits
  11595. width = math.max(width, minWidth - 1)
  11596. repeat
  11597. width = width + 1
  11598. label.Size = UDim2.new(0, width, 0, height)
  11599. until label.TextFits
  11600. end
  11601. local blockLabel = label:Clone()
  11602. blockLabel.Position = UDim2.new(0, 0, 0, totalHeight)
  11603. blockLabel.Size = UDim2.new(1, 0, 0, height)
  11604. blockLabel.Parent = frame
  11605. label:Destroy()
  11606. frame.Size = UDim2.new(0, width, 0, totalHeight + height)
  11607. return frame
  11608. end
  11609. end
  11610. end
  11611. function GuiServiceClass:Destroy()
  11612. self.running = false
  11613. self.cameraPart:Destroy()
  11614. self.cameraConnection:disconnect()
  11615. self.keyDownConnection:disconnect()
  11616. self.mouseButton1DownConnection:disconnect()
  11617. self.mouseButton1UpConnection:disconnect()
  11618. self.mouseButton2DownConnection:disconnect()
  11619. self.mouseButton2UpConnection:disconnect()
  11620. self.mouseMoveConnection:disconnect()
  11621. self.steppedConnection:disconnect()
  11622. end
  11623. function GuiServiceClass:GetMousePosition()
  11624. local mouse = self.mouse
  11625. return mouse.X, mouse.Y -- mouse.X, mouse.Y + 2 -- return mouse.X - 2, mouse.Y - 3
  11626. end
  11627. function GuiServiceClass:GetTextBounds(text, font, fontSize, alignX, alignY, width)
  11628. local tempLabel = self.tempLabel
  11629. tempLabel.Font = font
  11630. tempLabel.FontSize = fontSize
  11631. tempLabel.Size = UDim2.new(0, width, 0, 4096)
  11632. tempLabel.Text = text
  11633. tempLabel.TextXAlignment = alignX
  11634. tempLabel.TextYAlignment = alignY
  11635. local textBounds = tempLabel.TextBounds
  11636. tempLabel.Text = ""
  11637. return textBounds
  11638. end
  11639. function GuiServiceClass:Init(data)
  11640. GuiBase.Init(self)
  11641. local _ = string.char
  11642. local camera = data.Camera
  11643. local mouse = data.Mouse
  11644. local cameraPart = Instance.new("Part")
  11645. local billboardGui = Instance.new("BillboardGui", cameraPart)
  11646. guiFrame = Instance.new("Frame", billboardGui)
  11647. cameraPart.Anchored = true
  11648. cameraPart.BottomSurface = "Smooth"
  11649. cameraPart.CanCollide = false
  11650. -- cameraPart.CFrame = CFrame.new(16384, 16384, 16384)
  11651. cameraPart.FormFactor = "Custom"
  11652. cameraPart.Locked = true
  11653. cameraPart.Size = Vector3.new(0.2, 0.2, 0.2)
  11654. cameraPart.TopSurface = "Smooth"
  11655. cameraPart.Transparency = 1
  11656. billboardGui.Adornee = cameraPart
  11657. billboardGui.AlwaysOnTop = true
  11658. -- billboardGui.ExtentsOffset = Vector3.new(-16384, -16384, -16384)
  11659. guiFrame.BackgroundTransparency = 1
  11660. cameraPart.Parent = camera
  11661. self.running = true
  11662. self.m_base_instance = guiFrame
  11663. self.billboardGui = billboardGui
  11664. self.cameraPart = cameraPart
  11665. self.tempLabel = RBXInstance.new "TextLabel" {
  11666. BackgroundTransparency = 1,
  11667. TextTransparency = 1,
  11668. TextWrapped = true,
  11669. Parent = guiFrame
  11670. }
  11671. self.mnemonics = {}
  11672. self.visible = true
  11673. self.camera = camera
  11674. self.mouse = mouse
  11675. self.cameraConnection = camera.Changed:connect(function(property)
  11676. self:UpdateView()
  11677. if property == "CameraType" then
  11678. if camera.CameraType ~= Enum.CameraType.Track and camera.CameraType ~= Enum.CameraType.Fixed then
  11679. camera.CameraType = Enum.CameraType.Track
  11680. end
  11681. elseif property == "CoordinateFrame" and camera.CameraType ~= Enum.CameraType.Fixed then
  11682. local cframe, focus = camera.CoordinateFrame, camera.Focus
  11683. local watchOffset = focus.p - cframe.p
  11684. local error = watchOffset.unit - cframe.lookVector
  11685. if error.magnitude >= 1e-3 then
  11686. local head = PlayerControl.GetHead()
  11687. local time1, velocity1
  11688. if head then
  11689. time1 = time()
  11690. velocity1 = head.Velocity
  11691. end
  11692. if camera.Changed:wait() == "CoordinateFrame" then
  11693. local position = cframe.p
  11694. if head then
  11695. local time2 = time()
  11696. local velocity2 = head.Velocity
  11697. position = position + 0.5 * (velocity1 + velocity2) * (time2 - time1)
  11698. end
  11699. camera.CoordinateFrame = CFrame.new(position, camera.Focus.p)
  11700. end
  11701. end
  11702. end
  11703. end)
  11704. self.keyDownConnection = mouse.KeyDown:connect(function(key) self:KeyDown(key) end)
  11705. self.mouseButton1DownConnection = mouse.Button1Down:connect(function() self:MouseButton1Down() end)
  11706. self.mouseButton1UpConnection = mouse.Button1Up:connect(function() self:MouseButton1Up() end)
  11707. self.mouseButton2DownConnection = mouse.Button2Down:connect(function() self:MouseButton2Down() end)
  11708. self.mouseButton2UpConnection = mouse.Button2Up:connect(function() self:MouseButton2Up() end)
  11709. self.mouseMoveConnection = mouse.Move:connect(function() self:MouseMove() end)
  11710. self.steppedConnection = RunService.RenderStepped:connect(function() self:UpdateObjects() self:UpdateView() end)
  11711. self.mousePreviousPosition = Vector2.new(self:GetMousePosition())
  11712. end
  11713. function GuiServiceClass:IsA(className)
  11714. return className == "GuiService" or GuiBase.IsA(self, className)
  11715. end
  11716. function GuiServiceClass:KeyDown(key)
  11717. local mnemonicButton = self.mnemonics[string.upper(key)]
  11718. if mnemonicButton then
  11719. mnemonicButton.Activated:fire()
  11720. end
  11721. end
  11722. function GuiServiceClass:MouseButton1Down()
  11723. local mouse = self.mouse
  11724. local mouseX, mouseY = self:GetMousePosition()
  11725. local stack = {self}
  11726. local dragObjects = {}
  11727. self.dragObjects = dragObjects
  11728. while #stack > 0 do
  11729. local object = stack[#stack]
  11730. stack[#stack] = nil
  11731. if object.visible then
  11732. for child in pairs(object.children) do
  11733. stack[#stack + 1] = child
  11734. end
  11735. if object.active then
  11736. local position = object:GetAbsolutePosition()
  11737. local size = object:GetAbsoluteSize()
  11738. if mouseX >= position.X and mouseY >= position.Y and mouseX < position.X + size.X and mouseY < position.Y + size.Y then
  11739. object.mouseDown = true
  11740. dragObjects[object] = true
  11741. local mouseButton1Down = object.MouseButton1Down
  11742. if mouseButton1Down then
  11743. mouseButton1Down:fire()
  11744. if object.autoButtonColor then
  11745. local color = object.color
  11746. local transparency = object.backgroundTransparency
  11747. object.m_base_instance.BackgroundColor3 = Color3.new(math.min(color.r + 0.3, 1), math.min(color.g +
  11748.  
  11749. 0.3, 1), math.min(color.b + 0.3, 1))
  11750. object.m_base_instance.BackgroundTransparency = transparency
  11751. end
  11752. end
  11753. object.DragBegin:fire()
  11754. end
  11755. end
  11756. end
  11757. end
  11758. self.mousePreviousPosition = Vector2.new(mouseX, mouseY)
  11759. end
  11760. function GuiServiceClass:MouseButton1Up()
  11761. local mouse = self.mouse
  11762. local mouseX, mouseY = self:GetMousePosition()
  11763. local stack = {self}
  11764. while #stack > 0 do
  11765. local object = stack[#stack]
  11766. stack[#stack] = nil
  11767. if object.visible then
  11768. for child in pairs(object.children) do
  11769. stack[#stack + 1] = child
  11770. end
  11771. if object.active then
  11772. local position = object:GetAbsolutePosition()
  11773. local size = object:GetAbsoluteSize()
  11774. if mouseX >= position.X and mouseY >= position.Y and mouseX < position.X + size.X and mouseY < position.Y + size.Y then
  11775. object.MouseButton1Up:fire()
  11776. end
  11777. end
  11778. end
  11779. end
  11780. local dragObjects = self.dragObjects
  11781. self.dragObjects = nil
  11782. if dragObjects then
  11783. for dragObject in pairs(dragObjects) do
  11784. dragObject.mouseDown = false
  11785. local position = dragObject:GetAbsolutePosition()
  11786. local size = dragObject:GetAbsoluteSize()
  11787. if mouseX >= position.X and mouseY >= position.Y and mouseX < position.X + size.X and mouseY < position.Y + size.Y then
  11788. dragObject.MouseButton1Click:fire()
  11789. local activated = dragObject.Activated
  11790. if activated then
  11791. activated:fire()
  11792. end
  11793. end
  11794. dragObject.DragStopped:fire()
  11795. if dragObject.autoButtonColor then
  11796. if dragObject.mouseOver then
  11797. local color = dragObject.color
  11798. local transparency = dragObject.backgroundTransparency
  11799. dragObject.m_base_instance.BackgroundColor3 = Color3.new(math.max(color.r - 0.3, 0), math.max(color.g - 0.3, 0),
  11800.  
  11801. math.max(color.b - 0.3, 0))
  11802. dragObject.m_base_instance.BackgroundTransparency = math.max(0, transparency - 0.2)
  11803. else
  11804. dragObject.m_base_instance.BackgroundColor3 = dragObject.color
  11805. dragObject.m_base_instance.BackgroundTransparency = dragObject.backgroundTransparency
  11806. end
  11807. end
  11808. self.dragObject = nil
  11809. end
  11810. end
  11811. end
  11812. function GuiServiceClass:MouseButton2Down()
  11813. local mouse = self.mouse
  11814. local mouseX, mouseY = self:GetMousePosition()
  11815. local stack = {self}
  11816. while #stack > 0 do
  11817. local object = stack[#stack]
  11818. stack[#stack] = nil
  11819. if object.visible then
  11820. for child in pairs(object.children) do
  11821. stack[#stack + 1] = child
  11822. end
  11823. if object.active then
  11824. local position = object:GetAbsolutePosition()
  11825. local size = object:GetAbsoluteSize()
  11826. if mouseX >= position.X and mouseY >= position.Y and mouseX < position.X + size.X and mouseY < position.Y + size.Y then
  11827. local mouseButton2Down = object.MouseButton2Down
  11828. if mouseButton2Down then
  11829. mouseButton2Down:fire()
  11830. end
  11831. end
  11832. end
  11833. end
  11834. end
  11835. self.mousePreviousPosition = Vector2.new(mouseX, mouseY)
  11836. end
  11837. function GuiServiceClass:MouseButton2Up()
  11838. local mouse = self.mouse
  11839. local mouseX, mouseY = self:GetMousePosition()
  11840. local stack = {self}
  11841. while #stack > 0 do
  11842. local object = stack[#stack]
  11843. stack[#stack] = nil
  11844. if object.visible then
  11845. for child in pairs(object.children) do
  11846. stack[#stack + 1] = child
  11847. end
  11848. if object.active then
  11849. local position = object:GetAbsolutePosition()
  11850. local size = object:GetAbsoluteSize()
  11851. if mouseX >= position.X and mouseY >= position.Y and mouseX < position.X + size.X and mouseY < position.Y + size.Y then
  11852. local mouseButton2Up = object.MouseButton2Up
  11853. if mouseButton2Up then
  11854. mouseButton2Up:fire()
  11855. end
  11856. end
  11857. end
  11858. end
  11859. end
  11860. end
  11861. function GuiServiceClass:MouseMove()
  11862. self:UpdateObjects()
  11863. local dragObjects = self.dragObjects
  11864. if dragObjects then
  11865. for dragObject in pairs(dragObjects) do
  11866. local mouse = self.mouse
  11867. local mousePosition = Vector2.new(self:GetMousePosition())
  11868. dragObject.DragMove:fire(mousePosition - self.mousePreviousPosition)
  11869. self.mousePreviousPosition = mousePosition
  11870. end
  11871. end
  11872. end
  11873. function GuiServiceClass:SetMnemonic(mnemonic, button)
  11874. self.mnemonics[mnemonic] = button
  11875. end
  11876. function GuiServiceClass:UpdateObjects()
  11877. local mouse = self.mouse
  11878. local mouseX, mouseY = self:GetMousePosition()
  11879. local stack = {self}
  11880. while #stack > 0 do
  11881. local object = stack[#stack]
  11882. stack[#stack] = nil
  11883. if object.visible then
  11884. for child in pairs(object.children) do
  11885. stack[#stack + 1] = child
  11886. end
  11887. if object.active then
  11888. local position = object:GetAbsolutePosition()
  11889. local size = object:GetAbsoluteSize()
  11890. if mouseX >= position.X and mouseY >= position.Y and mouseX < position.X + size.X and mouseY < position.Y + size.Y then
  11891. if not object.mouseOver then
  11892. object.mouseOver = true
  11893. object.MouseEnter:fire()
  11894. if object.autoButtonColor then
  11895. local color = object.color
  11896. local transparency = object.backgroundTransparency
  11897. if object.mouseDown then
  11898. object.m_base_instance.BackgroundColor3 = Color3.new(math.min(color.r + 0.3, 1), math.min(color.g + 0.3, 1), math.min(color.b + 0.3, 1))
  11899. object.m_base_instance.BackgroundTransparency = transparency
  11900. else
  11901. object.m_base_instance.BackgroundColor3 = Color3.new(math.max(color.r - 0.3, 0), math.max(color.g - 0.3, 0), math.max(color.b - 0.3, 0))
  11902. object.m_base_instance.BackgroundTransparency = math.max(0, transparency - 0.2)
  11903. end
  11904. end
  11905. end
  11906. else
  11907. if object.mouseOver then
  11908. object.mouseOver = false
  11909. object.MouseLeave:fire()
  11910. if object.autoButtonColor then
  11911. object.m_base_instance.BackgroundColor3 = object.color
  11912. object.m_base_instance.BackgroundTransparency = object.backgroundTransparency
  11913. end
  11914. end
  11915. end
  11916. end
  11917. end
  11918. end
  11919. end
  11920. function GuiServiceClass:UpdateView()
  11921. local billboardGui = self.billboardGui
  11922. local guiFrame = self.m_base_instance
  11923. local camera = self.camera
  11924. local mouse = self.mouse
  11925. local cameraCFrame = CFrame.new(camera.CoordinateFrame.p, camera.Focus.p) -- camera.CoordinateFrame
  11926. local viewSizeX, viewSizeY = mouse.ViewSizeX, mouse.ViewSizeY
  11927. local previousViewSize = self.viewSize
  11928. if not previousViewSize or ((viewSizeX ~= 0 or viewSizeY ~= 0) and (viewSizeX ~= previousViewSize.X or viewSizeY ~= previousViewSize.Y)) then
  11929. self.viewSize = {X = viewSizeX, Y = viewSizeY}
  11930. local viewSizeUDim2 = UDim2.new(0, viewSizeX, 0, viewSizeY)
  11931. billboardGui.Size = viewSizeUDim2
  11932. guiFrame.Size = viewSizeUDim2
  11933. -- FIXME:
  11934. -- After the 15th of July 2014, there came an offset at the Y thingy out of nowhere so I accomodated for that.
  11935. billboardGui.SizeOffset = Vector2.new(0.5 / viewSizeX, (0.5 + 10) / viewSizeY)
  11936. end
  11937. --billboardGui.SizeOffset = Vector2.new()
  11938. billboardGui.StudsOffset = (cameraCFrame - cameraCFrame.p):inverse() * cameraCFrame.p - Vector3.new(0, 0, 1)
  11939. end
  11940. GuiService = GuiServiceClass:new {
  11941. Camera = Camera,
  11942. Mouse = Mouse
  11943. }
  11944. GuiFrame = setmetatable({}, GuiObject)
  11945. GuiFrame.__index = GuiFrame
  11946. GuiFrame.__default = {__index = {
  11947. Active = false,
  11948. BackgroundTransparency = 0.75,
  11949. BorderSize = 4,
  11950. BorderTransparency = 0.75,
  11951. Color = AdvancedGUI.GUI_BASE_COLOR,
  11952. Position = UDim2.new(0, 0, 0, 0),
  11953. Size = UDim2.new(0, 52, 0, 52),
  11954. Visible = true
  11955. }}
  11956. function GuiFrame:Destroy()
  11957. GuiObject.Destroy(self)
  11958. end
  11959. function GuiFrame:GetContentInstance()
  11960. return self.m_content_frame
  11961. end
  11962. function GuiFrame:Init(data)
  11963. GuiObject.Init(self)
  11964. setmetatable(data, GuiFrame.__default)
  11965. local leftBorderFrameLeft = RBXInstance.new "Frame" {
  11966. BackgroundColor3 = Color3.new(0, 0, 0),
  11967. BorderSizePixel = 0,
  11968. Size = UDim2.new(0, 1, 1, -1)
  11969. }
  11970. local leftBorderFrameCenter = RBXInstance.new "Frame" {
  11971. BackgroundColor3 = Color3.new(1, 1, 1),
  11972. BorderSizePixel = 0,
  11973. Position = UDim2.new(0, 1, 0, 1)
  11974. }
  11975. local leftBorderFrameRight = RBXInstance.new "Frame" {
  11976. BackgroundColor3 = Color3.new(0, 0, 0),
  11977. BorderSizePixel = 0
  11978. }
  11979. local rightBorderFrameRight = RBXInstance.new "Frame" {
  11980. BackgroundColor3 = Color3.new(0, 0, 0),
  11981. BorderSizePixel = 0,
  11982. Position = UDim2.new(1, -1, 0, 1),
  11983. Size = UDim2.new(0, 1, 1, -1)
  11984. }
  11985. local rightBorderFrameCenter = RBXInstance.new "Frame" {
  11986. BackgroundColor3 = Color3.new(1, 1, 1),
  11987. BorderSizePixel = 0
  11988. }
  11989. local rightBorderFrameLeft = RBXInstance.new "Frame" {
  11990. BackgroundColor3 = Color3.new(0, 0, 0),
  11991. BorderSizePixel = 0
  11992. }
  11993. local bottomBorderFrameBottom = RBXInstance.new "Frame" {
  11994. BackgroundColor3 = Color3.new(0, 0, 0),
  11995. BorderSizePixel = 0,
  11996. Position = UDim2.new(0, 0, 1, -1),
  11997. Size = UDim2.new(1, -1, 0, 1)
  11998. }
  11999. local bottomBorderFrameCenter = RBXInstance.new "Frame" {
  12000. BackgroundColor3 = Color3.new(1, 1, 1),
  12001. BorderSizePixel = 0
  12002. }
  12003. local bottomBorderFrameTop = RBXInstance.new "Frame" {
  12004. BackgroundColor3 = Color3.new(0, 0, 0),
  12005. BorderSizePixel = 0
  12006. }
  12007. local topBorderFrameTop = RBXInstance.new "Frame" {
  12008. BackgroundColor3 = Color3.new(0, 0, 0),
  12009. BorderSizePixel = 0,
  12010. Position = UDim2.new(0, 1, 0, 0),
  12011. Size = UDim2.new(1, -1, 0, 1)
  12012. }
  12013. local topBorderFrameCenter = RBXInstance.new "Frame" {
  12014. BackgroundColor3 = Color3.new(1, 1, 1),
  12015. BorderSizePixel = 0
  12016. }
  12017. local topBorderFrameBottom = RBXInstance.new "Frame" {
  12018. BackgroundColor3 = Color3.new(0, 0, 0),
  12019. BorderSizePixel = 0
  12020. }
  12021. local border_frame = RBXInstance.new "Frame" {
  12022. BackgroundTransparency = 1,
  12023. Size = UDim2.new(1, 0, 1, 0),
  12024. leftBorderFrameLeft,
  12025. leftBorderFrameCenter,
  12026. leftBorderFrameRight,
  12027. rightBorderFrameLeft,
  12028. rightBorderFrameCenter,
  12029. rightBorderFrameRight,
  12030. bottomBorderFrameBottom,
  12031. bottomBorderFrameCenter,
  12032. bottomBorderFrameTop,
  12033. topBorderFrameBottom,
  12034. topBorderFrameCenter,
  12035. topBorderFrameTop
  12036. }
  12037. local contentFrame = RBXInstance.new "Frame" {
  12038. BackgroundTransparency = 1,
  12039. BorderSizePixel = 0,
  12040. ClipsDescendants = true,
  12041. Size = UDim2.new(1, 0, 1, 0)
  12042. }
  12043. local base_frame = RBXInstance.new "Frame" {
  12044. BorderSizePixel = 0,
  12045. border_frame,
  12046. contentFrame
  12047. }
  12048. self.m_base_instance = base_frame
  12049. self.m_content_frame = contentFrame
  12050. self.m_border_frame = border_frame
  12051. self.leftBorderFrameLeft = leftBorderFrameLeft
  12052. self.leftBorderFrameCenter = leftBorderFrameCenter
  12053. self.leftBorderFrameRight = leftBorderFrameRight
  12054. self.rightBorderFrameLeft = rightBorderFrameLeft
  12055. self.rightBorderFrameCenter = rightBorderFrameCenter
  12056. self.rightBorderFrameRight = rightBorderFrameRight
  12057. self.bottomBorderFrameBottom = bottomBorderFrameBottom
  12058. self.bottomBorderFrameCenter = bottomBorderFrameCenter
  12059. self.bottomBorderFrameTop = bottomBorderFrameTop
  12060. self.topBorderFrameBottom = topBorderFrameBottom
  12061. self.topBorderFrameCenter = topBorderFrameCenter
  12062. self.topBorderFrameTop = topBorderFrameTop
  12063. self:SetActive(data.Active)
  12064. self:SetBackgroundTransparency(data.BackgroundTransparency)
  12065. self:SetBorderSize(data.BorderSize)
  12066. self:SetBorderTransparency(data.BorderTransparency)
  12067. self:SetColor(data.Color)
  12068. self:SetPosition(data.Position)
  12069. self:SetSize(data.Size)
  12070. self:SetVisible(data.Visible)
  12071. self:SetParent(data.Parent)
  12072. end
  12073. function GuiFrame:IsA(className)
  12074. return className == "GuiFrame" or GuiObject.IsA(self, className)
  12075. end
  12076. function GuiFrame:SetBorderSize(border_size)
  12077. border_size = math.max(math.floor(border_size + 0.5), 0)
  12078. if border_size ~= self.m_border_size then
  12079. self.m_border_size = border_size
  12080. local border_frame = self.m_border_frame
  12081. local contentFrame = self.m_content_frame
  12082. local leftBorderFrameCenter = self.leftBorderFrameCenter
  12083. local leftBorderFrameRight = self.leftBorderFrameRight
  12084. local rightBorderFrameCenter = self.rightBorderFrameCenter
  12085. local rightBorderFrameLeft = self.rightBorderFrameLeft
  12086. local bottomBorderFrameCenter = self.bottomBorderFrameCenter
  12087. local bottomBorderFrameTop = self.bottomBorderFrameTop
  12088. local topBorderFrameCenter = self.topBorderFrameCenter
  12089. local topBorderFrameBottom = self.topBorderFrameBottom
  12090. contentFrame.Position = UDim2.new(0, border_size, 0, border_size)
  12091. contentFrame.Size = UDim2.new(1, -2 * border_size, 1, -2 * border_size)
  12092. local inner_visible = border_size > 0
  12093. if self.leftBorderFrameLeft.Visible ~= inner_visible then
  12094. self.rightBorderFrameRight.Visible = inner_visible
  12095. self.bottomBorderFrameBottom.Visible = inner_visible
  12096. self.topBorderFrameTop.Visible = inner_visible
  12097. end
  12098. local outer_visible = border_size > 1
  12099. if leftBorderFrameCenter.Visible ~= outer_visible then
  12100. leftBorderFrameCenter.Visible = outer_visible
  12101. leftBorderFrameRight.Visible = outer_visible
  12102. rightBorderFrameCenter.Visible = outer_visible
  12103. rightBorderFrameLeft.Visible = outer_visible
  12104. bottomBorderFrameCenter.Visible = outer_visible
  12105. bottomBorderFrameTop.Visible = outer_visible
  12106. topBorderFrameCenter.Visible = outer_visible
  12107. topBorderFrameBottom.Visible = outer_visible
  12108. end
  12109. if outer_visible then
  12110. leftBorderFrameCenter.Size = UDim2.new(0, border_size - 2, 1, -border_size)
  12111. leftBorderFrameRight.Position = UDim2.new(0, border_size - 1, 0, border_size - 1)
  12112. leftBorderFrameRight.Size = UDim2.new(0, 1, 1, 1 - 2 * border_size)
  12113. rightBorderFrameCenter.Position = UDim2.new(1, 1 - border_size, 0, border_size - 1)
  12114. rightBorderFrameCenter.Size = UDim2.new(0, border_size - 2, 1, -border_size)
  12115. rightBorderFrameLeft.Position = UDim2.new(1, -border_size, 0, border_size)
  12116. rightBorderFrameLeft.Size = UDim2.new(0, 1, 1, 1 - 2 * border_size)
  12117. bottomBorderFrameCenter.Position = UDim2.new(0, 1, 1, 1 - border_size)
  12118. bottomBorderFrameCenter.Size = UDim2.new(1, -border_size, 0, border_size - 2)
  12119. bottomBorderFrameTop.Position = UDim2.new(0, border_size - 1, 1, -border_size)
  12120. bottomBorderFrameTop.Size = UDim2.new(1, 1 - 2 * border_size, 0, 1)
  12121. topBorderFrameCenter.Position = UDim2.new(0, border_size - 1, 0, 1)
  12122. topBorderFrameCenter.Size = UDim2.new(1, -border_size, 0, border_size - 2)
  12123. topBorderFrameBottom.Position = UDim2.new(0, border_size, 0, border_size - 1)
  12124. topBorderFrameBottom.Size = UDim2.new(1, 1 - 2 * border_size, 0, 1)
  12125. end
  12126. end
  12127. end
  12128. function GuiFrame:SetBorderTransparency(borderTransparency)
  12129. self.borderTransparency = borderTransparency
  12130. self.leftBorderFrameLeft.BackgroundTransparency = borderTransparency
  12131. self.leftBorderFrameCenter.BackgroundTransparency = borderTransparency
  12132. self.leftBorderFrameRight.BackgroundTransparency = borderTransparency
  12133. self.rightBorderFrameLeft.BackgroundTransparency = borderTransparency
  12134. self.rightBorderFrameCenter.BackgroundTransparency = borderTransparency
  12135. self.rightBorderFrameRight.BackgroundTransparency = borderTransparency
  12136. self.bottomBorderFrameBottom.BackgroundTransparency = borderTransparency
  12137. self.bottomBorderFrameCenter.BackgroundTransparency = borderTransparency
  12138. self.bottomBorderFrameTop.BackgroundTransparency = borderTransparency
  12139. self.topBorderFrameBottom.BackgroundTransparency = borderTransparency
  12140. self.topBorderFrameCenter.BackgroundTransparency = borderTransparency
  12141. self.topBorderFrameTop.BackgroundTransparency = borderTransparency
  12142. end
  12143. GuiButton = setmetatable({}, GuiFrame)
  12144. GuiButton.__index = GuiButton
  12145. GuiButton.__default = {__index = {
  12146. AutoButtonColor = true
  12147. }}
  12148. function GuiButton:Destroy()
  12149. self.Activated:disconnect()
  12150. GuiFrame.Destroy(self)
  12151. end
  12152. function GuiButton:Init(data)
  12153. if data.Active == nil then
  12154. data.Active = true
  12155. end
  12156. GuiFrame.Init(self, data)
  12157. setmetatable(data, GuiButton.__default)
  12158. self.Activated = RbxUtility.CreateSignal()
  12159. self:SetAutoButtonColor(data.AutoButtonColor)
  12160. end
  12161. function GuiButton:IsA(className)
  12162. return className == "GuiButton" or GuiFrame.IsA(self, className)
  12163. end
  12164. function GuiButton:SetAutoButtonColor(autoButtonColor)
  12165. if autoButtonColor ~= self.autoButtonColor then
  12166. self.autoButtonColor = autoButtonColor
  12167. if autoButtonColor then
  12168. if self.mouseOver then
  12169. local color = self.color
  12170. local transparency = self.backgroundTransparency
  12171. if self.mouseDown then
  12172. self.m_base_instance.BackgroundColor3 = Color3.new(math.min(color.r + 0.3, 1), math.min(color.g + 0.3, 1), math.min(color.b + 0.3, 1))
  12173. self.m_base_instance.BackgroundTransparency = transparency
  12174. else
  12175. self.m_base_instance.BackgroundColor3 = Color3.new(math.max(color.r - 0.3, 0), math.max(color.g - 0.3, 0), math.max(color.b - 0.3, 0))
  12176. self.m_base_instance.BackgroundTransparency = math.max(0, transparency - 0.5)
  12177. end
  12178. end
  12179. else
  12180. self.m_base_instance.BackgroundColor3 = self.color
  12181. end
  12182. end
  12183. end
  12184. GuiTextLabel = setmetatable({}, GuiFrame)
  12185. GuiTextLabel.__index = GuiTextLabel
  12186. GuiTextLabel.__default = {__index = {
  12187. Font = "ArialBold",
  12188. FontSize = "Size12",
  12189. Text = "",
  12190. TextColor = Color3.new(1, 1, 1),
  12191. TextStrokeColor = Color3.new(0, 0, 0),
  12192. TextStrokeTransparency = 0.6,
  12193. TextWrapped = true
  12194. }}
  12195. function GuiTextLabel:Destroy()
  12196. GuiFrame.Destroy(self)
  12197. end
  12198. function GuiTextLabel:Init(data)
  12199. GuiFrame.Init(self, data)
  12200. setmetatable(data, GuiTextLabel.__default)
  12201. local base_instance = self.m_base_instance
  12202. local textLabel = RBXInstance.new "TextLabel" {
  12203. BackgroundTransparency = 1,
  12204. Font = data.Font,
  12205. FontSize = data.FontSize,
  12206. TextColor3 = data.TextColor3,
  12207. TextStrokeColor3 = data.TextStrokeColor3,
  12208. TextStrokeTransparency = data.TextStrokeTransparency,
  12209. TextWrapped = data.TextWrapped
  12210. }
  12211. textLabel.Parent = self:GetContentInstance()
  12212. self.textLabel = textLabel
  12213. self:SetText(data.Text)
  12214. end
  12215. function GuiTextLabel:IsA(className)
  12216. return className == "GuiTextLabel" or GuiFrame.IsA(self, className)
  12217. end
  12218. function GuiTextLabel:SetText(text)
  12219. if text ~= self.text then
  12220. self.text = text
  12221. local text_index = 1
  12222. local content_instance = self:GetContentInstance()
  12223. local content_instance_size = content_instance.AbsoluteSize
  12224. local frame = Instance.new("Frame")
  12225. frame.BackgroundTransparency = 1
  12226. local label = Instance.new("TextLabel")
  12227. label.BackgroundTransparency = 1
  12228. label.Font = font
  12229. label.FontSize = fontSize
  12230. label.Size = UDim2.new(0, content_instance_size.X, 0, 1000)
  12231. label.Text = ""
  12232. label.TextColor3 = textColor3
  12233. label.TextTransparency = 1
  12234. label.TextWrapped = true
  12235. label.TextXAlignment = textXAlignment
  12236. label.TextYAlignment = textYAlignment
  12237. label.Parent = self.guiFrame
  12238. local row_length = 0
  12239. local step_size = 256
  12240. for step = 1, 8 do
  12241. step_size = 0.5 * step_size
  12242. label.Text = string.sub(text, text_index, text_index + row_length - 1)
  12243. end
  12244. end
  12245. end
  12246. GuiImageButton = setmetatable({}, GuiButton)
  12247. GuiImageButton.__index = GuiImageButton
  12248. GuiImageButton.__default = {__index = {
  12249. Image = ""
  12250. }}
  12251. function GuiImageButton:Destroy()
  12252. GuiButton.Destroy(self)
  12253. end
  12254. function GuiImageButton:Init(data)
  12255. GuiButton.Init(self, data)
  12256. setmetatable(data, GuiImageButton.__default)
  12257. local content_frame = self.m_content_frame
  12258. local image_label = RBXInstance.new "ImageLabel" {
  12259. BackgroundTransparency = 1,
  12260. Size = UDim2.new(1, 0, 1, 0)
  12261. }
  12262. image_label.Parent = content_frame
  12263. self.m_image_label = image_label
  12264. self:SetImage(data.Image)
  12265. end
  12266. function GuiImageButton:IsA(className)
  12267. return className == "GuiImageButton" or GuiButton.IsA(self, className)
  12268. end
  12269. function GuiImageButton:SetImage(image)
  12270. if image ~= self.m_image then
  12271. self.m_image = image
  12272. self.m_image_label.Image = image
  12273. end
  12274. end
  12275. GuiTextButton = setmetatable({}, GuiButton)
  12276. GuiTextButton.__index = GuiTextButton
  12277. GuiTextButton.__default = {__index = {
  12278. Font = Enum.Font.ArialBold,
  12279. FontSize = Enum.FontSize.Size11,
  12280. Text = "Button",
  12281. TextXAlignment = Enum.TextXAlignment.Center
  12282. }}
  12283. function GuiTextButton:Destroy()
  12284. GuiButton.Destroy(self)
  12285. end
  12286. function GuiTextButton:GetTextBounds()
  12287. return self.textLabel.TextBounds
  12288. end
  12289. function GuiTextButton:Init(data)
  12290. GuiButton.Init(self, data)
  12291. setmetatable(data, GuiTextButton.__default)
  12292. local contentFrame = self.m_content_frame
  12293. local mnemonicLabel = RBXInstance.new "TextLabel" {
  12294. BackgroundTransparency = 1,
  12295. Font = "ArialBold",
  12296. FontSize = "Size36",
  12297. Size = UDim2.new(1, 0, 0.7, 0),
  12298. TextColor3 = Color3.new(1, 1, 1),
  12299. TextStrokeColor3 = Color3.new(0, 0, 0),
  12300. TextStrokeTransparency = 0.6,
  12301. TextWrapped = true
  12302. }
  12303. local textLabel = RBXInstance.new "TextLabel" {
  12304. BackgroundTransparency = 1,
  12305. TextColor3 = Color3.new(1, 1, 1),
  12306. TextStrokeColor3 = Color3.new(0, 0, 0),
  12307. TextStrokeTransparency = 0.6,
  12308. TextWrapped = true
  12309. }
  12310. mnemonicLabel.Parent = contentFrame
  12311. textLabel.Parent = contentFrame
  12312. self.mnemonicLabel = mnemonicLabel
  12313. self.textLabel = textLabel
  12314. self:SetFont(data.Font)
  12315. self:SetFontSize(data.FontSize)
  12316. self:SetMnemonic(data.Mnemonic, true)
  12317. self:SetText(data.Text)
  12318. self:SetTextXAlignment(data.TextXAlignment)
  12319. end
  12320. function GuiTextButton:IsA(className)
  12321. return className == "GuiTextButton" or GuiButton.IsA(self, className)
  12322. end
  12323. function GuiTextButton:SetFont(font)
  12324. if font ~= self.font then
  12325. self.font = font
  12326. self.textLabel.Font = font
  12327. end
  12328. end
  12329. function GuiTextButton:SetFontSize(fontSize)
  12330. if fontSize ~= self.fontSize then
  12331. self.fontSize = fontSize
  12332. self.textLabel.FontSize = fontSize
  12333. end
  12334. end
  12335. function GuiTextButton:SetMnemonic(mnemonic, forceUpdate)
  12336. if mnemonic ~= self.mnemonic or forceUpdate then
  12337. if self.mnemonic then
  12338. GuiService:SetMnemonic(self.mnemonic, nil)
  12339. end
  12340. if mnemonic then
  12341. GuiService:SetMnemonic(mnemonic, self)
  12342. end
  12343. self.mnemonic = mnemonic
  12344. local mnemonicLabel = self.mnemonicLabel
  12345. local textLabel = self.textLabel
  12346. if mnemonic then
  12347. mnemonicLabel.Text = mnemonic
  12348. textLabel.Size = UDim2.new(1, 0, 0.9, 0)
  12349. textLabel.TextYAlignment = "Bottom"
  12350. else
  12351. mnemonicLabel.Text = ""
  12352. textLabel.Size = UDim2.new(1, 0, 1, 0)
  12353. textLabel.TextYAlignment = "Center"
  12354. end
  12355. end
  12356. end
  12357. function GuiTextButton:SetText(text)
  12358. if text ~= self.text then
  12359. self.text = text
  12360. self.textLabel.Text = text
  12361. end
  12362. end
  12363. function GuiTextButton:SetTextXAlignment(textXAlignment)
  12364. if textXAlignment ~= self.textXAlignment then
  12365. self.textXAlignment = textXAlignment
  12366. self.textLabel.TextXAlignment = textXAlignment
  12367. end
  12368. end
  12369. GuiWindow = setmetatable({}, GuiObject)
  12370. GuiWindow.__index = GuiWindow
  12371. GuiWindow.__default = {__index = {
  12372. Active = true,
  12373. BackgroundTransparency = 0.5,
  12374. BorderSize = 4,
  12375. BorderTransparency = 0.5,
  12376. Position = UDim2.new(0, 0, 0, 0),
  12377. Size = UDim2.new(0, 360, 0, 240),
  12378. Title = "Window",
  12379. TitleBarBackgroundTransparency = 0.5,
  12380. TitleBarBorderTransparency = 1,
  12381. Visible = true
  12382. }}
  12383. function GuiWindow:Init(data)
  12384. GuiObject.Init(self)
  12385. setmetatable(data, GuiFrame.__default)
  12386. local title_bar = GuiTextLabel:new {
  12387. BackgroundTransparency = data.TitleBarBackgroundTransparency,
  12388. BorderTransparency = data.TitleBarBackgroundTransparency,
  12389. Text = data.Title
  12390. }
  12391. local content_frame = GuiFrame:new {
  12392. Active = data.Active,
  12393. BackgroundTransparency = data.BackgroundTransparency,
  12394. BorderSize = data.BorderSize,
  12395. BorderTransparency = data.BorderTransparency
  12396. }
  12397. local base_frame = RBXInstance.new "Frame" {
  12398. BackgroundTransparency = 1,
  12399. BorderSizePixel = 0,
  12400. Position = data.Position,
  12401. Size = data.Size,
  12402. Visible = data.Visible
  12403. }
  12404. self.m_base_frame = base_frame
  12405. self.m_content_frame = content_frame
  12406. self.m_title_bar = title_bar
  12407. end
  12408. function GuiWindow:IsA(className)
  12409. return className == "GuiWindow" or GuiObject.IsA(self, className)
  12410. end
  12411. GuiScrollFrame = setmetatable({}, GuiFrame)
  12412. GuiScrollFrame.__index = GuiScrollFrame
  12413. GuiScrollFrame.__default = {__index = {
  12414. ContentHeight = 0,
  12415. ScrollBarColor = Color3.new(1, 1, 1)
  12416. }}
  12417. function GuiScrollFrame:Destroy()
  12418. self.m_scroll_bar:Destroy()
  12419. GuiFrame.Destroy(self)
  12420. end
  12421. function GuiScrollFrame:GetContentInstance()
  12422. return self.m_scroll_frame or GuiFrame.GetContentInstance(self)
  12423. end
  12424. function GuiScrollFrame:Init(data)
  12425. GuiFrame.Init(self, data)
  12426. setmetatable(data, GuiScrollFrame.__default)
  12427. local scroll_pane = RBXInstance.new "Frame" {
  12428. BackgroundColor3 = Color3.new(1, 1, 1),
  12429. BackgroundTransparency = 0.8,
  12430. BorderSizePixel = 0,
  12431. Position = UDim2.new(1, -20, 0, 0),
  12432. Size = UDim2.new(0, 20, 1, 0),
  12433. Parent = self.m_content_frame
  12434. }
  12435. local scroll_bar = GuiFrame:new {
  12436. Active = true,
  12437. BackgroundTransparency = 0.6,
  12438. BorderTransparency = 0.6,
  12439. Color = data.ScrollBarColor,
  12440. Parent = self
  12441. }
  12442. local scroll_frame = RBXInstance.new "Frame" {
  12443. BackgroundTransparency = 1,
  12444. Parent = self.m_content_frame
  12445. }
  12446. self.m_scroll_bar = scroll_bar
  12447. self.m_scroll_frame = scroll_frame
  12448. self.m_scroll_pane = scroll_pane
  12449. self.m_scroll_position = 0
  12450. self.m_updating_content_height = false
  12451. self:SetContentHeight(data.ContentHeight)
  12452. self:UpdateScrollPosition()
  12453. self.m_scroll_bar.DragBegin:connect(function()
  12454. self.m_scroll_drag_total = Vector2.new()
  12455. self.m_scroll_initial_position = self.m_scroll_position
  12456. end)
  12457. self.m_scroll_bar.DragMove:connect(function(offset)
  12458. self.m_scroll_drag_total = self.m_scroll_drag_total + offset
  12459. local absolute_height = self:GetAbsoluteSize().Y - 2 * self.m_border_size
  12460. if absolute_height ~= 0 then
  12461. local content_height = math.max(self.m_content_height, absolute_height)
  12462. local scroll_space = 1 - absolute_height / content_height
  12463. self:Scroll(self.m_scroll_initial_position + self.m_scroll_drag_total.Y * (content_height / absolute_height - 1) / scroll_space)
  12464. end
  12465. end)
  12466. end
  12467. function GuiScrollFrame:IsA(className)
  12468. return className == "GuiScrollFrame" or GuiFrame.IsA(self, className)
  12469. end
  12470. function GuiScrollFrame:Scroll(position)
  12471. position = math.min(math.max(position, 0), self.m_content_height - (self:GetAbsoluteSize().Y - 2 * self.m_border_size))
  12472. if position ~= self.m_scroll_position then
  12473. self.m_scroll_position = position
  12474. self:UpdateScrollPosition()
  12475. end
  12476. end
  12477. function GuiScrollFrame:SetContentHeight(height)
  12478. if height ~= self.m_content_height then
  12479. local prev_height = self.m_content_height
  12480. self.m_content_height = height
  12481. if not self.m_updating_content_height then
  12482. self.m_updating_content_height = true
  12483. coroutine.resume(coroutine.create(function()
  12484. local success, message = ypcall(self.SetContentHeightImpl1, self, prev_height)
  12485. if not success then
  12486. Logger.printf("Severe", "Error in GuiScrollFrame:SetContentHeight(%s): %s", Utility.ToString(height), message)
  12487. end
  12488. end))
  12489. end
  12490. end
  12491. end
  12492. function GuiScrollFrame:SetContentHeightImpl1(prev_height)
  12493. RunService.RenderStepped:wait()
  12494. self.m_updating_content_height = false
  12495. local height = self.m_content_height
  12496. self.m_scroll_frame.Size = UDim2.new(1, -20, 0, height)
  12497. if prev_height and prev_height ~= 0 then
  12498. local absolute_height = self:GetAbsoluteSize().Y - 2 * self.m_border_size
  12499. if self.m_scroll_position == prev_height - absolute_height then
  12500. self.m_scroll_position = height - absolute_height
  12501. else
  12502. self.m_scroll_position = height * self.m_scroll_position / prev_height
  12503. end
  12504. end
  12505. self:UpdateScrollPosition()
  12506. end
  12507. function GuiScrollFrame:UpdateScrollPosition()
  12508. local absolute_height = self:GetAbsoluteSize().Y - 2 * self.m_border_size
  12509. if absolute_height == 0 then
  12510. absolute_height = self.m_content_height
  12511. end
  12512. local scroll_bar = self.m_scroll_bar
  12513. local scroll_frame = self.m_scroll_frame
  12514. local scroll_pane = self.m_scroll_pane
  12515. local content_height = math.max(self.m_content_height, absolute_height)
  12516. if absolute_height == content_height then
  12517. scroll_frame.Position = UDim2.new(0, 0, 0, 0)
  12518. scroll_frame.Size = UDim2.new(1, 0, 1, 0)
  12519. scroll_bar:SetVisible(false)
  12520. scroll_pane.Visible = false
  12521. else
  12522. local contentScale = content_height / absolute_height
  12523. local scroll_space = 1 - absolute_height / content_height
  12524. local scroll_position = self.m_scroll_position
  12525. scroll_frame.Position = UDim2.new(0, 0, 0, -scroll_position)
  12526. scroll_bar:SetPosition(UDim2.new(1, -20, scroll_position / (content_height - absolute_height) * scroll_space, 0))
  12527. scroll_bar:SetSize(UDim2.new(0, 20, absolute_height / content_height, 0))
  12528. scroll_bar:SetVisible(true)
  12529. scroll_pane.Visible = true
  12530. end
  12531. end
  12532. GuiMenu = setmetatable({}, GuiFrame)
  12533. GuiMenu.__index = GuiMenu
  12534. GuiMenu.__default = {__index = {
  12535. VerticalSpacing = 18
  12536. }}
  12537. function GuiMenu:AddItem(text, onClick, options)
  12538. local frameSize = self:GetSize()
  12539. local frameHeight = frameSize.Y.Offset - self.m_border_size * 2
  12540. local verticalSpacing = self.verticalSpacing
  12541. local properties = {
  12542. BackgroundTransparency = 0.75,
  12543. BorderSize = 0,
  12544. BorderTransparency = 1,
  12545. Color = (#self.menuItems % 2 == 1) and Color3.new(0.25, 0.25, 0.25) or Color3.new(0, 0, 0),
  12546. FontSize = Enum.FontSize.Size12,
  12547. Position = UDim2.new(0, 0, 0, frameHeight),
  12548. Size = UDim2.new(1, 0, 0, verticalSpacing),
  12549. Text = text,
  12550. Parent = self
  12551. }
  12552. if options then
  12553. for key, value in pairs(options) do
  12554. properties[key] = value
  12555. end
  12556. end
  12557. local menuItem = GuiTextButton:new(properties)
  12558. if onClick then
  12559. menuItem.Activated:connect(function()
  12560. if not onClick(text, self) then
  12561. self:Destroy()
  12562. end
  12563. end)
  12564. end
  12565. self.menuItems[#self.menuItems + 1] = menuItem
  12566. self:SetSize(frameSize + UDim2.new(0, 0, 0, verticalSpacing))
  12567. end
  12568. function GuiMenu:ClearItems()
  12569. local menuItems = self.menuItems
  12570. for _, item in ipairs(menuItems) do
  12571. menuItems[item] = nil
  12572. item:Destroy()
  12573. end
  12574. local frameSize = self:GetSize()
  12575. self:SetSize(frameSize + UDim2.new(0, 0, 0, self.m_border_size * 2 - frameSize.Y.Offset))
  12576. end
  12577. function GuiMenu:Destroy()
  12578. self:ClearItems()
  12579. GuiFrame.Destroy(self)
  12580. end
  12581. function GuiMenu:Init(data)
  12582. GuiFrame.Init(self, data)
  12583. setmetatable(data, GuiMenu.__default)
  12584. self.menuItems = {}
  12585. self.verticalSpacing = data.VerticalSpacing
  12586. end
  12587. function GuiMenu:IsA(className)
  12588. return className == "GuiMenu" or GuiFrame.IsA(self, className)
  12589. end
  12590. GuiTextList = setmetatable({}, GuiScrollFrame)
  12591. GuiTextList.__index = GuiTextList
  12592. GuiTextList.__default = {__index = {
  12593. }}
  12594. function GuiTextList:AddItem(text, options)
  12595. local properties = {
  12596. BackgroundTransparency = 1,
  12597. Font = "ArialBold",
  12598. FontSize = "Size12",
  12599. Position = UDim2.new(0, 4, 0, self.m_content_height),
  12600. Size = UDim2.new(1, -8, 0, 12),
  12601. Text = tostring(text),
  12602. TextColor3 = Color3.new(1, 1, 1),
  12603. TextStrokeTransparency = 0.6,
  12604. TextWrapped = true,
  12605. TextXAlignment = "Left",
  12606. Parent = self:GetContentInstance()
  12607. }
  12608. if options then
  12609. for key, value in pairs(options) do
  12610. properties[key] = value
  12611. end
  12612. end
  12613. local textLabel = RBXInstance.new "TextLabel" (properties)
  12614. textLabel.Size = UDim2.new(1, 0, 0, textLabel.TextBounds.Y)
  12615. self.listItems[#self.listItems + 1] = textLabel
  12616. self:SetContentHeight(self.m_content_height + textLabel.TextBounds.Y)
  12617. end
  12618. function GuiTextList:ClearItems()
  12619. local listItems = self.listItems
  12620. for _, item in ipairs(listItems) do
  12621. listItems[item] = nil
  12622. item:Destroy()
  12623. end
  12624. self:SetContentHeight(0)
  12625. end
  12626. function GuiTextList:Destroy()
  12627. self:ClearItems()
  12628. GuiScrollFrame.Destroy(self)
  12629. end
  12630. function GuiTextList:Init(data)
  12631. GuiScrollFrame.Init(self, data)
  12632. self.listItems = {}
  12633. end
  12634. function GuiTextList:IsA(className)
  12635. return className == "GuiTextList" or GuiScrollFrame.IsA(self, className)
  12636. end
  12637. GuiNetworkList = setmetatable({}, GuiTextList)
  12638. GuiNetworkList.__index = GuiNetworkList
  12639. function GuiNetworkList:AddItem(systemTime, idleTime, userName, isNil)
  12640. local frame = GuiFrame:new {
  12641. BackgroundTransparency = 1,
  12642. BorderSize = 0,
  12643. BorderTransparency = 1,
  12644. Position = UDim2.new(0, 4, 0, self.m_content_height),
  12645. Size = UDim2.new(1, -8, 0, 14),
  12646. }
  12647. local systemTimeColor
  12648. if string.sub(systemTime, 1, 1) == "?" then
  12649. systemTimeColor = Color3.new(1, 0.75, 0.75)
  12650. else
  12651. systemTimeColor = Color3.new(0.75, 0.75, 1)
  12652. end
  12653. local systemTimeLabel = RBXInstance.new "TextLabel" {
  12654. BackgroundTransparency = 1,
  12655. Font = "ArialBold",
  12656. FontSize = "Size12",
  12657. Position = UDim2.new(0, 0, 0, 0),
  12658. Size = UDim2.new(0, 50, 1, 0),
  12659. Text = systemTime,
  12660. TextColor3 = systemTimeColor,
  12661. TextStrokeTransparency = 0.6,
  12662. TextXAlignment = "Left",
  12663. Parent = frame:GetContentInstance()
  12664. }
  12665. local idle_time_color
  12666. if string.sub(idleTime, 1, 1) == "0" then
  12667. idle_time_color = Color3.new(1, 1, 1)
  12668. else
  12669. idle_time_color = Color3.new(1, 0.75, 0.75)
  12670. end
  12671. local idleTimeLabel = RBXInstance.new "TextLabel" {
  12672. BackgroundTransparency = 1,
  12673. Font = "ArialBold",
  12674. FontSize = "Size12",
  12675. Position = UDim2.new(0, 40, 0, 0),
  12676. Size = UDim2.new(0, 45, 1, 0),
  12677. Text = idleTime,
  12678. TextColor3 = idle_time_color,
  12679. TextStrokeTransparency = 0.6,
  12680. TextXAlignment = "Right",
  12681. Parent = frame:GetContentInstance()
  12682. }
  12683. local userNameLabel = GuiTextButton:new {
  12684. AutoButtonColor = false,
  12685. BackgroundTransparency = 1,
  12686. BorderSize = 0,
  12687. BorderTransparency = 1,
  12688. Font = Enum.Font.SourceSansBold,
  12689. FontSize = Enum.FontSize.Size14,
  12690. Position = UDim2.new(0, 98, 0, 0),
  12691. Size = UDim2.new(1, -98, 1, 0),
  12692. TextXAlignment = Enum.TextXAlignment.Left,
  12693. Text = userName,
  12694. Parent = frame
  12695. }
  12696. frame:SetParent(self)
  12697. local userNameWidth = userNameLabel:GetTextBounds().X
  12698. userNameLabel:SetSize(UDim2.new(0, userNameWidth + 4, 1, 0))
  12699. if isNil then
  12700. local isNilLabel = RBXInstance.new "TextLabel" {
  12701. BackgroundTransparency = 1,
  12702. Font = "SourceSans",
  12703. FontSize = "Size14",
  12704. Position = UDim2.new(0, 100 + userNameWidth + 8, 0, 0),
  12705. Size = UDim2.new(0, 50, 1, 0),
  12706. Text = "(nil)",
  12707. TextColor3 = Color3.new(1, 0.4, 0.4),
  12708. TextStrokeTransparency = 0.6,
  12709. TextXAlignment = "Left",
  12710. Parent = frame:GetContentInstance()
  12711. }
  12712. end
  12713. self.listItems[#self.listItems + 1] = frame
  12714. self:SetContentHeight(self.m_content_height + 14)
  12715. end
  12716. function GuiNetworkList:IsA(className)
  12717. return className == "GuiNetworkList" or GuiTextList.IsA(self, className)
  12718. end
  12719. GuiTextOutput = setmetatable({}, GuiScrollFrame)
  12720. GuiTextOutput.__index = GuiTextOutput
  12721. GuiTextOutput.__default = {__index = {
  12722. DisplayMaxLines = 120,
  12723. DisplayWidth = 0
  12724. }}
  12725. function GuiTextOutput:Init(data)
  12726. GuiScrollFrame.Init(self, data)
  12727. setmetatable(data, GuiTextOutput.__default)
  12728. self.displayMaxLines = data.DisplayMaxLines
  12729. self.displayWidth = data.DisplayWidth
  12730. self.displayItems = {}
  12731. self:SetBackgroundTransparency(0)
  12732. self:SetColor(Color3.new(1, 1, 1))
  12733. self.m_scroll_pane.BackgroundColor3 = Color3.new(0.5, 0.5, 0.5)
  12734. end
  12735. function GuiTextOutput:IsA(className)
  12736. return className == "GuiTextOutput" or GuiScrollFrame.IsA(self, className)
  12737. end
  12738. function GuiTextOutput:Print(...)
  12739. self:PrintFormat(nil, ...)
  12740. end
  12741. function GuiTextOutput:PrintFormat(options, ...)
  12742. local buffer = {}
  12743. local args = {...}
  12744. local first = true
  12745. for i = 1, select("#", ...) do
  12746. buffer[i] = tostring(args[i])
  12747. end
  12748. message = Utility.BlockRobloxFilter(table.concat(buffer, "\t"))
  12749. local properties = {
  12750. BackgroundTransparency = 1,
  12751. Font = "ArialBold",
  12752. FontSize = "Size12",
  12753. Position = UDim2.new(0, 4, 0, self.m_content_height),
  12754. Text = message,
  12755. TextColor3 = Color3.new(1, 1, 1),
  12756. TextWrapped = true,
  12757. TextXAlignment = "Left",
  12758. TextYAlignment = "Bottom",
  12759. Parent = self:GetContentInstance()
  12760. }
  12761. if options then
  12762. for key, value in pairs(options) do
  12763. properties[key] = value
  12764. end
  12765. end
  12766. local textBounds = GuiService:GetTextBounds(message, properties.Font, properties.FontSize, properties.TextXAlignment, properties.TextYAlignment,
  12767.  
  12768. self.displayWidth - 20)
  12769. local textHeight = textBounds.Y
  12770. properties.Size = UDim2.new(0, self.displayWidth - 8, 0, textBounds.Y)
  12771. local textLabel = RBXInstance.new "TextLabel" (properties)
  12772. self.displayItems[#self.displayItems + 1] = textLabel
  12773. local maxLines = self.displayMaxLines
  12774. local maxHeight = maxLines * 12
  12775. local newHeight = self.m_content_height + textHeight
  12776. if newHeight > maxHeight then
  12777. local offset = 0
  12778. local newList = {}
  12779. local oldList = self.displayItems
  12780. for index, child in ipairs(oldList) do
  12781. local childOffset = child.Size.Y.Offset
  12782. if newHeight > maxHeight then
  12783. offset = offset + childOffset
  12784. newHeight = newHeight - childOffset
  12785. child:Destroy()
  12786. else
  12787. child.Position = child.Position - UDim2.new(0, 0, 0, offset)
  12788. newList[#newList + 1] = child
  12789. end
  12790. end
  12791. self.displayItems = newList
  12792. end
  12793. self:SetContentHeight(newHeight)
  12794. end
  12795. GuiChatLog = setmetatable({}, GuiScrollFrame)
  12796. GuiChatLog.__index = GuiChatLog
  12797. GuiChatLog.__default = {__index = {
  12798. DisplayMaxLines = 200,
  12799. DisplayWidth = 0,
  12800. }}
  12801. function GuiChatLog:Chat(speaker, message)
  12802. local speaker_color = AdvancedGUI.GenerateChatColor(speaker)
  12803. speaker = Utility.BlockRobloxFilter(speaker)
  12804. message = "\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t" .. Utility.BlockRobloxFilter(message)
  12805. local timestamp = Utility.GetTimestamp()
  12806. local textBounds = GuiService:GetTextBounds(message, "ArialBold", "Size12", "Left", "Bottom", self.displayWidth - 8)
  12807. local textHeight = math.max(math.min(textBounds.Y, 36), 12)
  12808. local message_frame = RBXInstance.new "Frame" {
  12809. BackgroundTransparency = 1,
  12810. Position = UDim2.new(0, 0, 0, self.m_content_height),
  12811. Size = UDim2.new(0, self.displayWidth, 0, textHeight),
  12812. Parent = self:GetContentInstance()
  12813. }
  12814. local timestamp_label = RBXInstance.new "TextLabel" {
  12815. BackgroundTransparency = 1,
  12816. Font = "ArialBold",
  12817. FontSize = "Size12",
  12818. Position = UDim2.new(0, 4, 0, 0),
  12819. Size = UDim2.new(1, -8, 0, 12),
  12820. Text = timestamp,
  12821. TextColor3 = Color3.new(0.75, 0.75, 0.75),
  12822. TextStrokeTransparency = 0.6,
  12823. TextWrapped = true,
  12824. TextXAlignment = "Left",
  12825. Parent = message_frame
  12826. }
  12827. local speaker_label = RBXInstance.new "TextLabel" {
  12828. BackgroundTransparency = 1,
  12829. Font = "ArialBold",
  12830. FontSize = "Size12",
  12831. Position = UDim2.new(0, 64, 0, 0),
  12832. Size = UDim2.new(0, 100, 0, 12),
  12833. Text = speaker,
  12834. TextColor3 = speaker_color,
  12835. TextStrokeTransparency = 0.6,
  12836. Parent = message_frame
  12837. }
  12838. local message_label = RBXInstance.new "TextLabel" {
  12839. BackgroundTransparency = 1,
  12840. Font = "ArialBold",
  12841. FontSize = "Size12",
  12842. Position = UDim2.new(0, 4, 0, 0),
  12843. Size = UDim2.new(1, -8, 1, 0),
  12844. Text = message,
  12845. TextColor3 = Color3.new(1, 1, 1),
  12846. TextStrokeTransparency = 0.6,
  12847. TextXAlignment = "Left",
  12848. TextYAlignment = "Bottom",
  12849. TextWrapped = true,
  12850. Parent = message_frame
  12851. }
  12852. self.displayItems[#self.displayItems + 1] = message_frame
  12853. local maxLines = self.displayMaxLines
  12854. local maxHeight = maxLines * 12
  12855. local newHeight = self.m_content_height + textHeight
  12856. if newHeight > maxHeight then
  12857. local offset = 0
  12858. local newList = {}
  12859. local oldList = self.displayItems
  12860. for index, child in ipairs(oldList) do
  12861. local childOffset = child.Size.Y.Offset
  12862. if newHeight > maxHeight then
  12863. offset = offset + childOffset
  12864. newHeight = newHeight - childOffset
  12865. child:Destroy()
  12866. else
  12867. child.Position = child.Position - UDim2.new(0, 0, 0, offset)
  12868. newList[#newList + 1] = child
  12869. end
  12870. end
  12871. self.displayItems = newList
  12872. end
  12873. self:SetContentHeight(newHeight)
  12874. end
  12875. function GuiChatLog:Init(data)
  12876. GuiScrollFrame.Init(self, data)
  12877. setmetatable(data, GuiChatLog.__default)
  12878. self.displayMaxLines = data.DisplayMaxLines
  12879. self.displayWidth = data.DisplayWidth
  12880. self.displayItems = {}
  12881. end
  12882. function GuiChatLog:IsA(className)
  12883. return className == "GuiChatLog" or GuiScrollFrame.IsA(self, className)
  12884. end
  12885. GuiSeperator = setmetatable({}, GuiObject)
  12886. GuiSeperator.__index = GuiSeperator
  12887. GuiSeperator.__default = {__index = {
  12888. Active = false,
  12889. Position = UDim2.new(0, 0, 0, 0),
  12890. Size = UDim2.new(1, 0, 0, 16),
  12891. Visible = true
  12892. }}
  12893. function GuiSeperator:Init(data)
  12894. GuiObject.Init(self)
  12895. setmetatable(data, GuiSeperator.__default)
  12896. local base_frame = RBXInstance.new "Frame" {
  12897. BackgroundTransparency = 1,
  12898. RBXInstance.new "Frame" {
  12899. BackgroundColor3 = Color3.new(1, 1, 1),
  12900. BackgroundTransparency = 0.25,
  12901. BorderSizePixel = 0,
  12902. Position = UDim2.new(0.5, -13, 0.5, -1),
  12903. Size = UDim2.new(0, 3, 0, 3),
  12904. RBXInstance.new "Frame" {
  12905. BackgroundColor3 = Color3.new(0, 0, 0),
  12906. BackgroundTransparency = 0.75,
  12907. BorderSizePixel = 0,
  12908. Position = UDim2.new(0, -1, 0, -1),
  12909. Size = UDim2.new(0, 5, 0, 5)
  12910. }
  12911. },
  12912. RBXInstance.new "Frame" {
  12913. BackgroundColor3 = Color3.new(1, 1, 1),
  12914. BackgroundTransparency = 0.25,
  12915. BorderSizePixel = 0,
  12916. Position = UDim2.new(0.5, -1, 0.5, -1),
  12917. Size = UDim2.new(0, 3, 0, 3),
  12918. RBXInstance.new "Frame" {
  12919. BackgroundColor3 = Color3.new(0, 0, 0),
  12920. BackgroundTransparency = 0.75,
  12921. BorderSizePixel = 0,
  12922. Position = UDim2.new(0, -1, 0, -1),
  12923. Size = UDim2.new(0, 5, 0, 5)
  12924. }
  12925. },
  12926. RBXInstance.new "Frame" {
  12927. BackgroundColor3 = Color3.new(1, 1, 1),
  12928. BackgroundTransparency = 0.25,
  12929. BorderSizePixel = 0,
  12930. Position = UDim2.new(0.5, 11, 0.5, -1),
  12931. Size = UDim2.new(0, 3, 0, 3),
  12932. RBXInstance.new "Frame" {
  12933. BackgroundColor3 = Color3.new(0, 0, 0),
  12934. BackgroundTransparency = 0.75,
  12935. BorderSizePixel = 0,
  12936. Position = UDim2.new(0, -1, 0, -1),
  12937. Size = UDim2.new(0, 5, 0, 5)
  12938. }
  12939. }
  12940. }
  12941. self.m_base_instance = base_frame
  12942. self:SetActive(data.Active)
  12943. self:SetPosition(data.Position)
  12944. self:SetSize(data.Size)
  12945. self:SetVisible(data.Visible)
  12946. self:SetParent(data.Parent)
  12947. end
  12948. function GuiSeperator:IsA(className)
  12949. return className == "GuiSeperator" or GuiObject.IsA(self, className)
  12950. end
  12951. local startMenu = GuiFrame:new {
  12952. BorderTransparency = 0.5,
  12953. Position = UDim2.new(0, -4, 0, -4),
  12954. Size = UDim2.new(0, 68, 1, 8),
  12955. Parent = GuiService
  12956. }
  12957. GuiSeperator:new {
  12958. Position = UDim2.new(0, 0, 0, 5),
  12959. Parent = startMenu
  12960. }
  12961. GuiSeperator:new {
  12962. Position = UDim2.new(0, 0, 1, -85),
  12963. Parent = startMenu
  12964. }
  12965. local networkButton = GuiTextButton:new {
  12966. BackgroundTransparency = 0.9,
  12967. Mnemonic = "L",
  12968. Position = UDim2.new(0, 4, 1, -647),
  12969. Text = "Network",
  12970. Parent = startMenu
  12971. }
  12972. local chatLogButton = GuiTextButton:new {
  12973. BackgroundTransparency = 0.9,
  12974. Mnemonic = "K",
  12975. Position = UDim2.new(0, 4, 1, -475),
  12976. Text = "Chat log",
  12977. Parent = startMenu
  12978. }
  12979. local outputButton = GuiTextButton:new {
  12980. BackgroundTransparency = 0.9,
  12981. Mnemonic = "P",
  12982. Position = UDim2.new(0, 4, 1, -283),
  12983. Text = "Output",
  12984. Parent = startMenu
  12985. }
  12986. local toolsButton = GuiTextButton:new {
  12987. BackgroundTransparency = 0.9,
  12988. Mnemonic = "O",
  12989. Position = UDim2.new(0, 4, 1, -137),
  12990. Text = "Tools",
  12991. Parent = startMenu
  12992. }
  12993. local networkFrame = GuiNetworkList:new {
  12994. Position = UDim2.new(0, 66, 1, -647),
  12995. Size = UDim2.new(0, 0, 0, 168),
  12996. Visible = false,
  12997. Parent = GuiService
  12998. }
  12999. local chatLogFrame = GuiChatLog:new {
  13000. DisplayWidth = 332,
  13001. Position = UDim2.new(0, 66, 1, -475),
  13002. Size = UDim2.new(0, 0, 0, 188),
  13003. Visible = false,
  13004. Parent = GuiService
  13005. }
  13006. local outputFrame = GuiTextOutput:new {
  13007. DisplayWidth = 332,
  13008. Position = UDim2.new(0, 66, 1, -283),
  13009. Size = UDim2.new(0, 0, 0, 140),
  13010. Visible = false,
  13011. Parent = GuiService
  13012. }
  13013. local toolsFrame = GuiFrame:new {
  13014. Position = UDim2.new(0, 66, 1, -137),
  13015. Size = UDim2.new(0, 0, 0, 52),
  13016. Visible = false,
  13017. Parent = GuiService
  13018. }
  13019. local toggleCharacterButton = GuiTextButton:new {
  13020. BackgroundTransparency = 0.9,
  13021. Position = UDim2.new(0, 1, 0, 1),
  13022. Size = UDim2.new(0, 108, 0, 20),
  13023. Text = "Enable character",
  13024. Parent = toolsFrame
  13025. }
  13026. local resetCharacterButton = GuiTextButton:new {
  13027. BackgroundTransparency = 0.9,
  13028. Position = UDim2.new(0, 1, 0, 23),
  13029. Size = UDim2.new(0, 108, 0, 20),
  13030. Text = "Reset character",
  13031. Parent = toosFrame
  13032. }
  13033. local clearWorkspaceButton = GuiTextButton:new {
  13034. BackgroundTransparency = 0.9,
  13035. Position = UDim2.new(0, 110, 0, 1),
  13036. Size = UDim2.new(0, 108, 0, 20),
  13037. Text = "Clear workspace",
  13038. Parent = toolsFrame
  13039. }
  13040. local clearScriptButton = GuiTextButton:new {
  13041. BackgroundTransparency = 0.9,
  13042. Position = UDim2.new(0, 110, 0, 23),
  13043. Size = UDim2.new(0, 108, 0, 20),
  13044. Text = "Clear all",
  13045. Parent = toolsFrame
  13046. }
  13047. local fixLightingButton = GuiTextButton:new {
  13048. BackgroundTransparency = 0.9,
  13049. Position = UDim2.new(0, 219, 0, 1),
  13050. Size = UDim2.new(0, 108, 0, 20),
  13051. Text = "Fix lighting",
  13052. Parent = toolsFrame
  13053. }
  13054. local reloadCommandsButton = GuiTextButton:new {
  13055. BackgroundTransparency = 0.9,
  13056. Position = UDim2.new(0, 219, 0, 23),
  13057. Size = UDim2.new(0, 108, 0, 20),
  13058. Text = "Reload commands",
  13059. Parent = toolsFrame
  13060. }
  13061. toggleCharacterButton.Activated:connect(function()
  13062. local enabled = not PlayerControl.IsEnabled()
  13063. if enabled then
  13064. toggleCharacterButton:SetText("Disable character")
  13065. else
  13066. toggleCharacterButton:SetText("Enable character")
  13067. end
  13068. PlayerControl.SetEnabled(enabled)
  13069. end)
  13070. resetCharacterButton.Activated:connect(function()
  13071. PlayerControl.ResetCharacter()
  13072. end)
  13073. clearWorkspaceButton.Activated:connect(function()
  13074. Utility.CleanWorkspace()
  13075. end)
  13076. clearScriptButton.Activated:connect(function()
  13077. Utility.CleanWorkspaceAndScripts()
  13078. end)
  13079. fixLightingButton.Activated:connect(function()
  13080. Utility.CleanLighting()
  13081. end)
  13082. reloadCommandsButton.Activated:connect(function()
  13083. UserInterface.FixChattedConnection()
  13084. end)
  13085. local networkFrameActive = false
  13086. local networkFrameTweening = false
  13087. networkButton.Activated:connect(function()
  13088. if not networkFrameTweening then
  13089. networkFrameActive = not networkFrameActive
  13090. networkFrameTweening = true
  13091. if networkFrameActive then
  13092. networkFrame:SetVisible(true)
  13093. networkFrame.m_base_instance:TweenSize(UDim2.new(0, 276, 0, 168), nil, nil, 0.5)
  13094. wait(0.5)
  13095. else
  13096. networkFrame.m_base_instance:TweenSize(UDim2.new(0, 0, 0, 168), nil, nil, 0.5)
  13097. wait(0.5)
  13098. networkFrame:SetVisible(false)
  13099. end
  13100. networkFrameTweening = false
  13101. end
  13102. end)
  13103. local chatLogFrameActive = false
  13104. local chatLogFrameTweening = false
  13105. chatLogButton.Activated:connect(function()
  13106. if not chatLogFrameTweening then
  13107. chatLogFrameActive = not chatLogFrameActive
  13108. chatLogFrameTweening = true
  13109. if chatLogFrameActive then
  13110. chatLogFrame:SetVisible(true)
  13111. chatLogFrame.m_base_instance:TweenSize(UDim2.new(0, 360, 0, 188), nil, nil, 0.5)
  13112. wait(0.5)
  13113. else
  13114. chatLogFrame.m_base_instance:TweenSize(UDim2.new(0, 0, 0, 188), nil, nil, 0.5)
  13115. wait(0.5)
  13116. chatLogFrame:SetVisible(false)
  13117. end
  13118. chatLogFrameTweening = false
  13119. end
  13120. end)
  13121. local outputFrameActive = false
  13122. local outputFrameTweening = false
  13123. outputButton.Activated:connect(function()
  13124. if not outputFrameTweening then
  13125. outputFrameActive = not outputFrameActive
  13126. outputFrameTweening = true
  13127. if outputFrameActive then
  13128. outputFrame:SetVisible(true)
  13129. outputFrame.m_base_instance:TweenSize(UDim2.new(0, 360, 0, 140), nil, nil, 0.5)
  13130. wait(0.5)
  13131. else
  13132. outputFrame.m_base_instance:TweenSize(UDim2.new(0, 0, 0, 140), nil, nil, 0.5)
  13133. wait(0.5)
  13134. outputFrame:SetVisible(false)
  13135. end
  13136. outputFrameTweening = false
  13137. end
  13138. end)
  13139. local toolsFrameActive = false
  13140. local toolsFrameTweening = false
  13141. toolsButton.Activated:connect(function()
  13142. if not toolsFrameTweening then
  13143. toolsFrameActive = not toolsFrameActive
  13144. toolsFrameTweening = true
  13145. if toolsFrameActive then
  13146. toolsFrame:SetVisible(true)
  13147. toolsFrame.m_base_instance:TweenSize(UDim2.new(0, 336, 0, 52), nil, nil, 0.5)
  13148. wait(0.5)
  13149. else
  13150. toolsFrame.m_base_instance:TweenSize(UDim2.new(0, 0, 0, 52), nil, nil, 0.5)
  13151. wait(0.5)
  13152. toolsFrame:SetVisible(false)
  13153. end
  13154. toolsFrameTweening = false
  13155. end
  13156. end)
  13157. AdvancedGUI.startMenu = startMenu
  13158. AdvancedGUI.networkFrame = networkFrame
  13159. AdvancedGUI.outputFrame = outputFrame
  13160. AdvancedGUI.toolsFrame = toolsFrame
  13161. AdvancedGUI.chatLogFrame = chatLogFrame
  13162. AdvancedGUI.toggleCharacterButton = toggleCharacterButton
  13163. AdvancedGUI.reloadCommandsButton = reloadCommandsButton
  13164. function AdvancedGUI.Print(...)
  13165. AdvancedGUI.outputFrame:Print(...)
  13166. end
  13167. function AdvancedGUI.PrintFormat(...)
  13168. AdvancedGUI.outputFrame:PrintFormat(...)
  13169. end
  13170. function AdvancedGUI.PrintChatLog(speaker, message)
  13171. AdvancedGUI.chatLogFrame:Chat(speaker, message)
  13172. end
  13173. for _, entry in Logger.NodeIterator, Logger.entries do
  13174. if entry then
  13175. local messageType = entry[1]
  13176. local messageTypeValue
  13177. if messageType == Logger.MessageType.Error then
  13178. messageTypeValue = Logger.MessageType.Severe.Value
  13179. else
  13180. messageTypeValue = messageType.Value
  13181. end
  13182. AdvancedGUI.outputFrame:PrintFormat(Logger.MESSAGE_TYPE_SETTINGS[messageTypeValue], entry[2])
  13183. else
  13184. break
  13185. end
  13186. end
  13187.  
  13188. function GetPlayers(str)
  13189. local found = {};
  13190. if str == "all" then
  13191. for i,v in pairs(game.Players:children()) do
  13192. if v:IsA("Player") then table.insert(found,v) end
  13193. end
  13194. else
  13195. for i,v in pairs(game.Players:children()) do
  13196. if string.match(v.Name:lower(), str:lower()) and v:IsA("Player") then
  13197. table.insert(found,v)
  13198. end
  13199. end
  13200. end
  13201. return found
  13202. end
  13203.  
  13204. function NewCMD(nme, usg, desc,func)
  13205. table.insert(CMDS, {['Name']=nme, ['Usage']=usg, ['Description']=desc, ['Function']=func})
  13206. end
  13207.  
  13208. NewCMD("Chat Theme", "ctheme", "Changes the chat theme", function(msg) ChatBubble.SetTheme(msg) end)
  13209. NewCMD("Clean", "clr", "Clears the game", function() Utility.CleanWorkspaceAndScripts() end)
  13210. NewCMD("Fix Lighting", "fixl", "Fixes the lighting",function() Utility.CleanLighting() end)
  13211. NewCMD("Dismiss", "d", "Dismisses tabs",function()
  13212. Dismiss()
  13213. ChatBubble.Create("Dismissed Tabs...")
  13214. end)
  13215.  
  13216. NewCMD("Kill", "kill", "Kills the player", function(msg)
  13217. local plrs = GetPlayers(msg)
  13218. for _,plr in next,plrs do
  13219.  
  13220. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Really red"), float_duration = 0.2})
  13221. plr.Character:BreakJoints()
  13222.  
  13223. end
  13224. end)
  13225.  
  13226. NewCMD("Private Server", "ps", "Makes the server private!",function()
  13227. game.Players.PlayerAdded:connect(function(player)
  13228. player.CharacterAdded:connect(function(h)
  13229. if player.Name ~= "PointCoded" or "nguyenjimbo" or game.Players.LocalPlayer.Name then
  13230. wait(0.5)
  13231. player:Kick()
  13232. end
  13233. end)
  13234. end)
  13235. ChatBubble.Create("Private Server is Activated")
  13236. end)
  13237.  
  13238. NewCMD("nonPrivate Server", "nps", "Makes the server not private!",function()
  13239. Pserver = false
  13240. ChatBubble.Create("Private Server Is no longer Activated")
  13241. end)
  13242.  
  13243.  
  13244. NewCMD("Remove hidden sb", "rhs", "Removes a player's hidden sb", function(msg)
  13245. local plrs = GetPlayers(msg)
  13246. for _,plr in next,plrs do
  13247. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Really red"), float_duration = 0.2})
  13248. plr.PlayerGui:ClearAllChildren()
  13249. end
  13250. end)
  13251.  
  13252. NewCMD("Day", "day", "Makes the time day", function()
  13253. game.Lighting.TimeOfDay = "12:00:00"
  13254. ChatBubble.Create("It is now day")
  13255. end)
  13256.  
  13257. NewCMD("Night", "night", "Makes the time night", function()
  13258. game.Lighting.TimeOfDay = "00:00:00"
  13259. ChatBubble.Create("It is now night")
  13260. end)
  13261.  
  13262. NewCMD("Midnight", "midnight", "Makes the time midnight", function()
  13263. game.Lighting.TimeOfDay = "06:00:00"
  13264. ChatBubble.Create("It is now midnight")
  13265. end)
  13266.  
  13267.  
  13268. NewCMD("Teleport", "tp", "Teleports you to a player",function(msg)
  13269. local plrs = GetPlayers(msg)
  13270. for _,plr in next,plrs do
  13271. local Nam = plr.Name
  13272. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Really black"), float_duration = 0.5})
  13273. Player.Character.Torso.CFrame = plr.Character.Torso.CFrame
  13274. ChatBubble.Create("Teleported you to: "..Nam.."!")
  13275. end
  13276. end)
  13277.  
  13278. NewCMD("Admin", "adm", "Admins a player",function(msg)
  13279. local plrs = GetPlayers(msg)
  13280. for _,plr in next,plrs do
  13281. if plr.Character then
  13282. local shared = script:clone()
  13283. shared.Disabled = true
  13284. shared.Parent = plr.Backpack
  13285. wait(1)
  13286. shared.Disabled = false
  13287. end
  13288. end
  13289. end)
  13290.  
  13291. NewCMD("Blast", "blas", "Blasts a player",function(msg)
  13292. local plrs = GetPlayers(msg)
  13293. for _,plr in next,plrs do
  13294. function HSV(H,S,V)
  13295. plr.Character.Torso.Anchored = true
  13296. H = H % 360
  13297. local C = V * S
  13298. local H2 = H/60
  13299. local X = C * (1 - math.abs((H2 %2) -1))
  13300. local color = Color3.new(0,0,0)
  13301. if H2 <= 0 then
  13302. color = Color3.new(C,0,0)
  13303. elseif 0 <= H2 and H2 <= 1 then
  13304. color = Color3.new(C,X,0)
  13305. elseif 1 <= H2 and H2 <= 2 then
  13306. color = Color3.new(X,C,0)
  13307. elseif 2 <= H2 and H2 <= 3 then
  13308. color = Color3.new(0,C,X)
  13309. elseif 3 <= H2 and H2 <= 4 then
  13310. color = Color3.new(0,X,C)
  13311. elseif 4 <= H2 and H2 <= 5 then
  13312. color = Color3.new(X,0,C)
  13313. elseif 5 <= H2 and H2 <= 6 then
  13314. color = Color3.new(C,0,X)
  13315. end
  13316. local m = V - C
  13317. return Color3.new(color.r + m, color.g + m, color.b + m)
  13318. end
  13319.  
  13320.  
  13321. if plr.Character.Torso then
  13322. plr.Character.Torso.CFrame = plr.Character.Torso.CFrame * CFrame.new(0, 350, 0)
  13323. wait(2)
  13324. local p = Instance.new("Part", workspace)
  13325. p.FormFactor = "Custom"
  13326. p.Anchored = true
  13327. p.Locked = true
  13328. p.CFrame = CFrame.new(plr.Character.Torso.CFrame.x,plr.Character.Torso.CFrame.y, plr.Character.Torso.CFrame.z) * CFrame.Angles(math.pi/2, 0, 0)
  13329. p.Size = Vector3.new(0.2, 0.2, 0.2)
  13330. p.CanCollide = false
  13331. local msh = Instance.new("SpecialMesh", p)
  13332. msh.MeshId = "http://www.roblox.com/asset/?id=3270017"
  13333. msh.TextureId = "http://www.roblox.com/asset/?id=48358980"
  13334.  
  13335. local hue = 0
  13336. for _ = 0, 5000 do
  13337. hue = ((hue+0.5)%360)
  13338. msh.Scale = msh.Scale + Vector3.new(2, 2, 0)
  13339. p.Transparency = p.Transparency + 0.005
  13340. local colur = HSV(hue,1,1)
  13341. msh.VertexColor = Vector3.new(colur.r,colur.g,colur.b)
  13342. wait()
  13343. plr.Character.Torso.Anchored = false
  13344. end
  13345. end
  13346. end
  13347. end)
  13348.  
  13349. NewCMD("Fire", "fi", "Sets a player on fire",function(msg)
  13350. local plrs = GetPlayers(msg)
  13351. for _,plr in next,plrs do
  13352. local Nam = plr.Name
  13353. local F = Instance.new("Fire")
  13354. F.Parent = plr.Character.Torso
  13355. ChatBubble.Create("Given Fire to: "..plr.Name"!")
  13356. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Deep orange"), float_duration = 0.2})
  13357. end
  13358. end)
  13359.  
  13360. NewCMD("Sparkles", "spa", "Gives a player sparkles",function(msg)
  13361. local plrs = GetPlayers(msg)
  13362. for _,plr in next,plrs do
  13363. local F = Instance.new("Sparkles")
  13364. F.Parent = plr.Character.Torso
  13365. ChatBubble.Create("Given Sparkles")
  13366. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Lily white"), float_duration = 0.2})
  13367. end
  13368. end)
  13369. NewCMD("Rpe", "rpe", "Lets you rpe a player",function(msg)
  13370. local plrs = GetPlayers(msg)
  13371. for _,plr in next,plrs do
  13372. n1 = game.Players.LocalPlayer.Name
  13373. n2 = plr.Name
  13374. t1 = game.Players[n1].Character.Torso
  13375. t2 = game.Players[n2].Character.Torso
  13376. t2.Parent.Humanoid.PlatformStand = true
  13377. t1["Left Shoulder"]:Remove()
  13378. ls1 = Instance.new("Weld")
  13379. ls1.Parent = t1
  13380. ls1.Part0 = t1
  13381. ls1.Part1 = t1.Parent["Left Arm"]
  13382. ls1.C0 = CFrame.new(-1.5,0,0)
  13383. ls1.Name = "Left Shoulder"
  13384. t1["Right Shoulder"]:Remove()
  13385. rs1 = Instance.new("Weld")
  13386. rs1.Parent = t1
  13387. rs1.Part0 = t1
  13388. rs1.Part1 = t1.Parent["Right Arm"]
  13389. rs1.C0 = CFrame.new(1.5,0,0)
  13390. rs1.Name = "Right Shoulder"
  13391. --[[ t1["Left Hip"]:Remove()
  13392. lh1 = Instance.new("Weld")
  13393. lh1.Parent = t1
  13394. lh1.Part0 = t1
  13395. lh1.Part1 = t1.Parent["Left Leg"]
  13396. lh1.C0 = CFrame.new(-0.5,-2,0)
  13397. lh1.Name = "Left Hip" t1["Right Hip"]:Remove()
  13398. rh1 = Instance.new("Weld") rh1.Parent = t1
  13399. rh1.Part0 = t1
  13400. rh1.Part1 = t1.Parent["Right Leg"]
  13401. rh1.C0 = CFrame.new(0.5,-2,0)
  13402. rh1.Name = "Right Hip"]]
  13403. t2["Left Shoulder"]:Remove()
  13404. ls2 = Instance.new("Weld")
  13405. ls2.Parent = t2
  13406. ls2.Part0 = t2
  13407. ls2.Part1 = t2.Parent["Left Arm"]
  13408. ls2.C0 = CFrame.new(-1.5,0,0)
  13409. ls2.Name = "Left Shoulder"
  13410. t2["Right Shoulder"]:Remove()
  13411. rs2 = Instance.new("Weld")
  13412. rs2.Parent = t2
  13413. rs2.Part0 = t2
  13414. rs2.Part1 = t2.Parent["Right Arm"]
  13415. rs2.C0 = CFrame.new(1.5,0,0)
  13416. rs2.Name = "Right Shoulder"
  13417. t2["Left Hip"]:Remove()
  13418. lh2 = Instance.new("Weld")
  13419. lh2.Parent = t2
  13420. lh2.Part0 = t2
  13421. lh2.Part1 = t2.Parent["Left Leg"]
  13422. lh2.C0 = CFrame.new(-0.5,-2,0)
  13423. lh2.Name = "Left Hip"
  13424. t2["Right Hip"]:Remove()
  13425. rh2 = Instance.new("Weld")
  13426. rh2.Parent = t2
  13427. rh2.Part0 = t2
  13428. rh2.Part1 = t2.Parent["Right Leg"]
  13429. rh2.C0 = CFrame.new(0.5,-2,0)
  13430. rh2.Name = "Right Hip"
  13431. local d = Instance.new("Part")
  13432. d.TopSurface = 0
  13433. d.BottomSurface = 0
  13434. d.CanCollide = false
  13435. d.BrickColor = BrickColor.new("Medium stone grey")
  13436. d.Shape = "Ball" d.Parent = t1
  13437. d.Size = Vector3.new(1,1,1)
  13438. local dm = Instance.new("SpecialMesh")
  13439. dm.MeshType = "Sphere"
  13440. dm.Parent = d
  13441. dm.Scale = Vector3.new(0.4,0.4,0.4)
  13442. fWeld("weld",t1,t1,d,true,-0.2,-1.3,-0.6,0,0,0)
  13443. d2 = d:Clone()
  13444. d2.Parent = t1
  13445. fWeld("weld",t1,t1,d2,true,0.2,-1.3,-0.6,0,0,0)
  13446. local c = Instance.new("Part")
  13447. c.TopSurface = 0 c.BottomSurface = 0
  13448. c.CanCollide = false
  13449. c.BrickColor = BrickColor.new("Pastel brown")
  13450. c.Parent = t1
  13451. c.formFactor = "Custom"
  13452. c.Size = Vector3.new(0.4,1.3,0.4)
  13453. cm = Instance.new("CylinderMesh")
  13454. cm.Parent = c
  13455. a = fWeld("weld",t1,t1,c,true,0,-1,-0.52+(-c.Size.y/2),math.rad(-80),0,0)
  13456. c2 = d:Clone()
  13457. c2.BrickColor = BrickColor.new("Medium stone grey")
  13458. c2.Mesh.Scale = Vector3.new(0.4,0.62,0.4)
  13459. c2.Parent = t1
  13460. fWeld("weld",c,c,c2,true,0,0+(c.Size.y/2),0,math.rad(-10),0,0)
  13461. local bl = Instance.new("Part")
  13462. bl.TopSurface = 0
  13463. bl.BottomSurface = 0
  13464. bl.CanCollide = false
  13465. bl.BrickColor = BrickColor.new("Pastel brown")
  13466. bl.Shape = "Ball"
  13467. bl.Parent = t2
  13468. bl.Size = Vector3.new(1,1,1)
  13469. local dm = Instance.new("SpecialMesh")
  13470. dm.MeshType = "Sphere"
  13471. dm.Parent = bl
  13472. dm.Scale = Vector3.new(1.2,1.2,1.2)
  13473. fWeld("weld",t2,t2,bl,true,-0.5,0.5,-0.6,0,0,0)
  13474. local br = Instance.new("Part")
  13475. br.TopSurface = 0
  13476. br.BottomSurface = 0
  13477. br.CanCollide = false
  13478. br.BrickColor = BrickColor.new("Pastel brown")
  13479. br.Shape = "Ball"
  13480. br.Parent = t2
  13481. br.Size = Vector3.new(1,1,1)
  13482. local dm = Instance.new("SpecialMesh")
  13483. dm.MeshType = "Sphere"
  13484. dm.Parent = br
  13485. dm.Scale = Vector3.new(1.2,1.2,1.2)
  13486. fWeld("weld",t2,t2,br,true,0.5,0.5,-0.6,0,0,0)
  13487. local bln = Instance.new("Part")
  13488. bln.TopSurface = 0
  13489. bln.BottomSurface = 0
  13490. bln.CanCollide = false
  13491. bln.Shape = "Ball"
  13492. bln.Parent = t2
  13493. bln.Size = Vector3.new(1,1,1)
  13494. local dm = Instance.new("SpecialMesh")
  13495. dm.MeshType = "Sphere"
  13496. dm.Parent = bln
  13497. dm.Scale = Vector3.new(0.2,0.2,0.2)
  13498. fWeld("weld",t2,t2,bln,true,-0.5,0.5,-1.2,0,0,0)
  13499. local brn = Instance.new("Part")
  13500. brn.TopSurface = 0
  13501. brn.BottomSurface = 0
  13502. brn.CanCollide = false
  13503. brn.Shape = "Ball"
  13504. brn.Parent = t2
  13505. brn.Size = Vector3.new(1,1,1)
  13506. local dm = Instance.new("SpecialMesh")
  13507. dm.MeshType = "Sphere"
  13508. dm.Parent = brn
  13509. dm.Scale = Vector3.new(0.2,0.2,0.2)
  13510. fWeld("weld",t2,t2,brn,true,0.5,0.5,-1.2,0,0,0)
  13511. lh2.C1 = CFrame.new(0,-1.5,-0.5) *CFrame.Angles(0.9,-0.4,0)
  13512. rh2.C1 = CFrame.new(0,-1.5,-0.5) *CFrame.Angles(0.9,0.4,0)
  13513. ls2.C1 = CFrame.new(-0.5,-1.3,-0.5) *CFrame.Angles(0.9,-0.4,0)
  13514. rs2.C1 = CFrame.new(0.5,-1.3,-0.5) *CFrame.Angles(0.9,0.4,0)
  13515. ls1.C1 = CFrame.new(-0.5,0.7,0) *CFrame.Angles(-0.9,-0.4,0)
  13516. rs1.C1 = CFrame.new(0.5,0.7,0) *CFrame.Angles(-0.9,0.4,0)
  13517. if t1:findFirstChild("weldx") ~= nil then
  13518. t1.weldx:Remove() end
  13519. we = fWeld("weldx",t1,t1,t2,true,0,-0.9,-1.3,math.rad(-90),0,0)
  13520. n = t2.Neck
  13521. n.C0 = CFrame.new(0,1.5,0) *CFrame.Angles(math.rad(-210),math.rad(180),0)
  13522. while true do wait() for i=1,6 do we.C1 = we.C1 * CFrame.new(0,-0.3,0) wait() end
  13523. for i=1,6 do we.C1 = we.C1 * CFrame.new(0,0.3,0) wait() end end
  13524. end
  13525. end
  13526. )
  13527.  
  13528. NewCMD("Box", "box", "Gives the player an outline",function(msg)
  13529. local plrs = GetPlayers(msg)
  13530. for _,plr in next,plrs do
  13531. if plr and plr.Character then
  13532. if plr.Character:findFirstChild("Torso") then
  13533. for _,base in pairs(plr.Character:children()) do
  13534. if base:IsA("BasePart") then
  13535. local box = Instance.new("SelectionBox", base)
  13536. box.Adornee = base
  13537. box.Color = BrickColor.new("Really black")
  13538. end
  13539. end
  13540. end
  13541. end
  13542. end
  13543.  
  13544. end)
  13545.  
  13546. NewCMD("Remove Box", "box", "removes a players outline",function(msg)
  13547. local plrs = GetPlayers(msg)
  13548. for _,plr in next,plrs do
  13549. if plr and plr.Character then
  13550. for _,base in pairs(plr.Character:children()) do
  13551. if base:IsA("BasePart") then
  13552. for _,b in pairs(base:children()) do
  13553. if b:IsA("SelectionBox") then
  13554. b:Destroy()
  13555. end
  13556. end
  13557. end
  13558. end
  13559. end
  13560. end
  13561.  
  13562. end)
  13563.  
  13564. NewCMD("ClearBackpack", "cback", "Clears a players backpack",function(msg)
  13565. local plrs = GetPlayers(msg)
  13566. for _,plr in next,plrs do
  13567. plr.Backpack:ClearAllChildren()
  13568. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Lily white"), float_duration = 0.2})
  13569. end
  13570. end)
  13571.  
  13572. NewCMD("Btools", "bto", "Gives a player building tools",function(msg)
  13573. local plrs = GetPlayers(msg)
  13574. for _,plr in next,plrs do
  13575. local x = game:GetService("InsertService"):LoadAsset(73089166) x.Parent =game.Players.LocalPlayer.Backpack
  13576. local x = game:GetService("InsertService"):LoadAsset(73089204) x.Parent =game.Players.LocalPlayer.Backpack
  13577. local x = game:GetService("InsertService"):LoadAsset(73089190) x.Parent =game.Players.LocalPlayer.Backpack
  13578. local x = game:GetService("InsertService"):LoadAsset(58880579) x.Parent =game.Players.LocalPlayer.Backpack
  13579. local x = game:GetService("InsertService"):LoadAsset(60791062) x.Parent =game.Players.LocalPlayer.Backpack
  13580. local x = game:GetService("InsertService"):LoadAsset(73089239) x.Parent =game.Players.LocalPlayer.Backpack
  13581. ChatBubble.Create("Given Btools")
  13582. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Lily white"), float_duration = 0.2})
  13583. end
  13584. end)
  13585.  
  13586. NewCMD("Knife", "kni", "Gives a player a knife",function(msg)
  13587. local plrs = GetPlayers(msg)
  13588. for _,plr in next,plrs do
  13589. ChatBubble.Create("Given Knife")
  13590. local x = game:GetService("InsertService"):LoadAsset(170897263) x.Parent =game.Players.LocalPlayer.Backpack
  13591. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Lily white"), float_duration = 0.2})
  13592. end
  13593. end)
  13594.  
  13595. NewCMD("Darksteel", "drks", "Gives a player the darksteel katana",function(msg)
  13596. local plrs = GetPlayers(msg)
  13597. for _,plr in next,plrs do
  13598. local x = game:GetService("InsertService"):LoadAsset(86494893) x.Parent =game.Players.LocalPlayer.Backpack
  13599. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Lily white"), float_duration = 0.2})
  13600. end
  13601. end)
  13602.  
  13603. NewCMD("Archer", "arch", "Gives a player ALOT of bows",function(msg)
  13604. local plrs = GetPlayers(msg)
  13605. for _,plr in next,plrs do
  13606. local x = game:GetService("InsertService"):LoadAsset(92142841) x.Parent =game.Players.LocalPlayer.Backpack
  13607. local x = game:GetService("InsertService"):LoadAsset(110892267) x.Parent =game.Players.LocalPlayer.Backpack
  13608. local x = game:GetService("InsertService"):LoadAsset(160198008) x.Parent =game.Players.LocalPlayer.Backpack
  13609. local x = game:GetService("InsertService"):LoadAsset(204485737) x.Parent =game.Players.LocalPlayer.Backpack
  13610. local x = game:GetService("InsertService"):LoadAsset(223785350) x.Parent =game.Players.LocalPlayer.Backpack
  13611. local x = game:GetService("InsertService"):LoadAsset(287425246) x.Parent =game.Players.LocalPlayer.Backpack
  13612. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Lily white"), float_duration = 0.2})
  13613. end
  13614. end)
  13615.  
  13616. NewCMD("Swords", "swor", "Gives a player ALOT of swords",function(msg)
  13617. local plrs = GetPlayers(msg)
  13618. for _,plr in next,plrs do
  13619. local x = game:GetService("InsertService"):LoadAsset(159229806) x.Parent = game.Players.LocalPlayer.Backpack
  13620. local x = game:GetService("InsertService"):LoadAsset(101191388) x.Parent = game.Players.LocalPlayer.Backpack
  13621. local x = game:GetService("InsertService"):LoadAsset(77443491) x.Parent = game.Players.LocalPlayer.Backpack
  13622. local x = game:GetService("InsertService"):LoadAsset(77443461) x.Parent = game.Players.LocalPlayer.Backpack
  13623. local x = game:GetService("InsertService"):LoadAsset(108149175) x.Parent = game.Players.LocalPlayer.Backpack
  13624. local x = game:GetService("InsertService"):LoadAsset(53623248) x.Parent = game.Players.LocalPlayer.Backpack
  13625. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Lily white"), float_duration = 0.2})
  13626. end
  13627. end)
  13628.  
  13629. NewCMD("Fire,Sparkles,ForceField", "fsf", "Gives a player Fire+Sparkles+FF",function(msg)
  13630. local plrs = GetPlayers(msg)
  13631. for _,plr in next,plrs do
  13632. local F = Instance.new("Sparkles")
  13633. F.Parent = plr.Character.Torso
  13634. local F = Instance.new("Fire")
  13635. F.Parent = plr.Character.Torso
  13636. local F = Instance.new("ForceField")
  13637. F.Parent = plr.Character
  13638.  
  13639. end
  13640. end)
  13641.  
  13642. NewCMD("ForceField", "ff", "Gives a player a ForceField",function(msg)
  13643. local plrs = GetPlayers(msg)
  13644. for _,plr in next,plrs do
  13645. local F = Instance.new("ForceField")
  13646. F.Parent = plr.Character
  13647. end
  13648. end)
  13649.  
  13650. NewCMD("RemoveFire", "rfia", "Removes fire from a player",function(msg)
  13651. local plrs = GetPlayers(msg)
  13652. for _,plr in next,plrs do
  13653. for _,Child in pairs(plr["Character"].Torso:GetChildren()) do
  13654. if Child:IsA("Fire") then
  13655. Child:Destroy()
  13656. end
  13657. end
  13658. end
  13659. end)
  13660.  
  13661. NewCMD("Stop Messages", "sm", "Clears all messages in the workspace",function()
  13662. for _,Child in pairs(game.Workspace:GetChildren()) do
  13663. if Child:IsA("Message") then
  13664. Child:Destroy()
  13665. end
  13666. end
  13667. end)
  13668.  
  13669. NewCMD("Always Stop Messages", "asm", "Always Clears all messages in the workspace",function()
  13670. asm = true
  13671. end)
  13672.  
  13673. NewCMD("Never Stop Messages", "nsm", "never Clears all messages in the workspace",function()
  13674. asm = false
  13675. end)
  13676.  
  13677. NewCMD("RemoveSparkles", "rsp", "Removes Sparkles From A Player",function(msg)
  13678. local plrs = GetPlayers(msg)
  13679. for _,plr in next,plrs do
  13680. for _,Child in pairs(plr["Character"].Torso:GetChildren()) do
  13681. if Child:IsA("Sparkles") then
  13682. Child:Destroy()
  13683. end
  13684. end
  13685. end
  13686. end)
  13687.  
  13688. NewCMD("RemoveForceField", "rff", "Removes ff from a player",function(msg)
  13689. local plrs = GetPlayers(msg)
  13690. for _,plr in next,plrs do
  13691. for _,Child in pairs(plr["Character"]:GetChildren()) do
  13692. if Child:IsA("ForceField") then
  13693. Child:Destroy()
  13694. end
  13695. end
  13696. end
  13697. end)
  13698.  
  13699. NewCMD("God", "go", "Makes a player god",function(msg)
  13700. local plrs = GetPlayers(msg)
  13701. for _,plr in next,plrs do
  13702. plr.Character.Humanoid.MaxHealth = math.huge
  13703. plr.Character.Humanoid.Health = math.huge
  13704. ChatBubble.Create("Goded Player!")
  13705. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Really black"), float_duration = 0.2})
  13706. end
  13707. end)
  13708.  
  13709. NewCMD("Remove god", "rgo", "Remove god from a player",function(msg)
  13710. local plrs = GetPlayers(msg)
  13711. for _,plr in next,plrs do
  13712. plr.Character.Humanoid.MaxHealth = 100
  13713. plr.Character.Humanoid.Health = 100
  13714. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Really red"), float_duration = 0.2})
  13715. end
  13716. end)
  13717.  
  13718. NewCMD("Red Outline", "OlRed", "Makes the tablets have a red Outline",function()
  13719. OutlineColor = BrickColor.new("Really red")
  13720. end)
  13721.  
  13722. NewCMD("Blue Outline", "OlBlue", "Makes the tablets have a blue Outline",function()
  13723. OutlineColor = BrickColor.new("Really blue")
  13724. end)
  13725.  
  13726. NewCMD("Black Outline", "OlBlack", "Makes the tablets have a black Outline",function()
  13727. OutlineColor = BrickColor.new("Really black")
  13728. end)
  13729.  
  13730. NewCMD ("White Outline", :OlWhite", "Makes the tablets have a white Outline",function()
  13731. OutlineColor = BrickColor.new("White")
  13732. end)
  13733.  
  13734. NewCMD("Swegify", "sweg", "Makes a player sweg",function(msg)
  13735. local plrs = GetPlayers(msg)
  13736. for _,plr in next,plrs do
  13737. plr.Character.BodyColors:remove()
  13738. plr.Character.Humanoid.MaxHealth = 100000
  13739. plr.Character.Humanoid.Health = 100000
  13740. plr.Character["Head"].BrickColor = BrickColor.new("Institutional White")
  13741. plr.Character["Torso"].BrickColor = BrickColor.new("Institutional White")
  13742. plr.Character["Left Leg"].BrickColor = BrickColor.new("Institutional White")
  13743. plr.Character["Left Arm"].BrickColor = BrickColor.new("Institutional White")
  13744. plr.Character["Right Arm"].BrickColor = BrickColor.new("Institutional White")
  13745. plr.Character["Right Leg"].BrickColor = BrickColor.new("Institutional White")
  13746. if plr.Character.Shirt then
  13747. plr.Character.Shirt:remove()
  13748. end
  13749. if plr.Character.Pants then
  13750. plr.Character.Pants:remove()
  13751. end
  13752. local S = Instance.new("Shirt")
  13753. S.Parent = plr.Character
  13754. S.ShirtTemplate = "http://www.roblox.com/asset/?id=156250287"
  13755. local S = Instance.new("Pants")
  13756. S.Parent = plr.Character
  13757. S.ShirtTemplate = "http://www.roblox.com/asset/?id=120713224"
  13758.  
  13759. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new(""), float_duration = 0.2})
  13760. end
  13761. end)
  13762.  
  13763. NewCMD("Playerinfo", "pin", "Shows a players information",function(msg)
  13764. local plrs = GetPlayers(msg)
  13765. for _,plr in next,plrs do
  13766. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Forest green"), float_duration = 0.2})
  13767. Tablet("Age: "..plr.AccountAge, Colors.Magenta)
  13768. Tablet("Membership: "..plr.MembershipType.Name, Colors.Magenta)
  13769. Tablet("Player: "..plr.Name, Colors.Magenta)
  13770. Tablet("Id: "..plr.userId, Colors.Magenta)
  13771. Tablet("Camera Mode: "..plr.CameraMode.Name, Colors.Magenta)
  13772. Tablet("This is "..plr.."'s info", Colors.Magenta)
  13773. ChatBubble.Create("Found info!")
  13774. end
  13775. end)
  13776.  
  13777. NewCMD("Remove music", "rm", "remove music",function()
  13778. for _,Child in pairs(game.Workspace:GetChildren()) do
  13779. if Child:IsA("Sound") then
  13780. Child:Stop()
  13781. end
  13782. end
  13783.  
  13784. end)
  13785.  
  13786. Services = {
  13787. game:GetService("Workspace"),
  13788. game:GetService("Players"),
  13789. game:GetService("Lighting"),
  13790. game:GetService("StarterPack"),
  13791. game:GetService("StarterGui"),
  13792. game:GetService("Teams"),
  13793. game:GetService("SoundService"),
  13794. game:GetService("Debris"),
  13795. game:GetService("InsertService"),
  13796. game:GetService("RunService"),
  13797. game:GetService("Chat"),
  13798. game:GetService("TeleportService"),
  13799. game:GetService("Geometry"),
  13800. game:GetService("MarketplaceService"),
  13801. game:GetService("BadgeService"),
  13802. game:GetService("NetworkClient"),
  13803. game:GetService("FriendService"),
  13804. }
  13805.  
  13806. function Explore(Item)
  13807. Dismiss()
  13808. if(Item==nil)then
  13809. for _,v in pairs(Services)do
  13810. Tablet(tostring(v),Colors.Black,function() wait() Explore(v) end)
  13811. end;
  13812. else
  13813. f={
  13814. ['View children']=function()
  13815. Dismiss()
  13816. for _,v in pairs(Item:children())do
  13817. Tablet(v.Name,Colors.Black,function()
  13818. wait()
  13819. Explore(v)
  13820. end);
  13821. end;
  13822. end;
  13823. ['View parent']=function()
  13824. wait()
  13825. Explore(Item.Parent)
  13826. end;
  13827. ['Destroy']=function()
  13828. Item:Destroy();
  13829. Explore(Item.Parent);
  13830. end;
  13831. ['Clear']=function()
  13832. Item:ClearAllChildren()
  13833. end;
  13834. ['Clone']=function()
  13835. pcall(function()
  13836. cloneableObj = Item:clone()
  13837. end)
  13838. end;
  13839. ['Remove']=function()
  13840. Item:remove()
  13841. end;
  13842. ['Stop']=function()
  13843. Item:Stop()
  13844. end;
  13845. ['Play']=function()
  13846. Item:Play()
  13847. end;
  13848. ['Shiny']=function()
  13849. Item.Reflectance = 1
  13850. end;
  13851. ['Un-Shiny']=function()
  13852. Item.Reflectance = 0
  13853. end;
  13854. ['Transparent']=function()
  13855. Item.Transparency = 1
  13856. end;
  13857. ['Opaque']=function()
  13858. Item.Transparency = 0
  13859. end;
  13860. ['Paste']=function()
  13861. if cloneableObj then
  13862. cloneableObj.Parent = Item
  13863. end
  13864. end;
  13865. };
  13866. for i,v in pairs(f)do
  13867. Tablet(tostring(i),Colors.Red,v);
  13868. end;
  13869. Tablet('Item Name: \''..tostring(Item.Name)..'\'',Colors.Blue,nil);
  13870. Tablet('Class: \''..tostring(Item.ClassName)..'\'',Colors.Blue,nil);
  13871. if cloneableObj then
  13872. Tablet('Currently Cloning: \''..tostring(cloneableObj.Name)..'\'',Colors.Blue,nil);
  13873. end
  13874. end;
  13875. end;
  13876.  
  13877. NewCMD("Explore","expl","Explore the game",
  13878. function()
  13879. Explore()
  13880. end
  13881. )
  13882.  
  13883.  
  13884.  
  13885. function Fus()
  13886. for _,Child in pairs(game.Workspace:GetChildren()) do
  13887. if Child:IsA("Sound") then
  13888. Child:Destroy()
  13889. end
  13890. end
  13891. local S = Instance.new("Sound")
  13892. S = game.Workspace.Sound
  13893. S:Stop()
  13894. S.SoundId = "http://www.roblox.com/asset/?id=130776150"
  13895. Tablet("Play",Colors.Black,S:Play())
  13896. end
  13897. function Hun()
  13898. for _,Child in pairs(game.Workspace:GetChildren()) do
  13899. if Child:IsA("Sound") then
  13900. Child:Destroy()
  13901. end
  13902. end
  13903. local S = Instance.new("Sound")
  13904. S.Parent = game.Workspace
  13905. S:Stop()
  13906. S.SoundId = "http://www.roblox.com/asset/?id=142397652"
  13907. Tablet("Play",Colors.Black,S:Play())
  13908. end
  13909. function Ill()
  13910. for _,Child in pairs(game.Workspace:GetChildren()) do
  13911. if Child:IsA("Sound") then
  13912. Child:Destroy()
  13913. end
  13914. end
  13915. local S = Instance.new("Sound")
  13916. S.Parent = game.Workspace
  13917. S:Stop()
  13918. S.SoundId = "http://www.roblox.com/asset/?id=188797309"
  13919. Tablet("Play",Colors.Black,S:Play())
  13920. end
  13921. function Bel()
  13922. for _,Child in pairs(game.Workspace:GetChildren()) do
  13923. if Child:IsA("Sound") then
  13924. Child:Destroy()
  13925. end
  13926. end
  13927. local S = Instance.new("Sound")
  13928. S.Parent = game.Workspace
  13929. S:Stop()
  13930. S.SoundId = "http://www.roblox.com/asset/?id=165432090"
  13931. Tablet("Play",Colors.Black,S:Play())
  13932. end
  13933. function Dub()
  13934. for _,Child in pairs(game.Workspace:GetChildren()) do
  13935. if Child:IsA("Sound") then
  13936. Child:Destroy()
  13937. end
  13938. end
  13939. local S = Instance.new("Sound")
  13940. S.Parent = game.Workspace
  13941. S:Stop()
  13942. S.SoundId = "http://www.roblox.com/asset/?id=152745539"
  13943. Tablet("Play",Colors.Black,S:Play())
  13944. end
  13945. function Can()
  13946. for _,Child in pairs(game.Workspace:GetChildren()) do
  13947. if Child:IsA("Sound") then
  13948. Child:Destroy()
  13949. end
  13950. end
  13951. local S = Instance.new("Sound")
  13952. S.Parent = game.Workspace
  13953. S:Stop()
  13954. S.SoundId = "http://www.roblox.com/asset/?id=222095512"
  13955. Tablet("Play",Colors.Black,S:Play())
  13956. end
  13957.  
  13958. function Music()
  13959. Tablet("Fus Ro Dah!",Colors.Black,Fus())
  13960. Tablet("Hunger Games",Colors.Black,Hun())
  13961. Tablet("Illuminati",Colors.Black,Ill())
  13962. Tablet("I Believe i can fly",Colors.Black,Bel())
  13963. Tablet("Dubstep Remix!",Colors.Black,Dub())
  13964. Tablet("Candy Land!",Colors.Black,Can())
  13965. end
  13966.  
  13967.  
  13968.  
  13969.  
  13970. NewCMD("Music List","Ml","Shows The Music List",
  13971. function()
  13972. Tablet("Fus Ro Dah!",Colors.Black,Fus())
  13973. Tablet("Hunger Games",Colors.Black,Hun())
  13974. Tablet("Illuminati",Colors.Black,Ill())
  13975. Tablet("I Believe i can fly",Colors.Black,Bel())
  13976. Tablet("Dubstep Remix!",Colors.Black,Dub())
  13977. Tablet("Candy Land!",Colors.Black,Can())
  13978. end
  13979. )
  13980.  
  13981.  
  13982.  
  13983.  
  13984.  
  13985.  
  13986.  
  13987.  
  13988.  
  13989.  
  13990.  
  13991.  
  13992. NewCMD("Doge", "doge", "Dogeify's the player", function(msg)
  13993. local plrs = GetPlayers(msg)
  13994. for _,plr in next,plrs do
  13995. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Really red"), float_duration = 0.2})
  13996. local function QuaternionFromCFrame(cf)
  13997. local mx, my, mz, m00, m01, m02, m10, m11, m12, m20, m21, m22 = cf:components()
  13998. local trace = m00 + m11 + m22
  13999. if trace > 0 then
  14000. local s = math.sqrt(1 + trace)
  14001. local recip = 0.5/s
  14002. return (m21-m12)*recip, (m02-m20)*recip, (m10-m01)*recip, s*0.5
  14003. else
  14004. local i = 0
  14005. if m11 > m00 then
  14006. i = 1
  14007. end
  14008. if m22 > (i == 0 and m00 or m11) then
  14009. i = 2
  14010. end
  14011. if i == 0 then
  14012. local s = math.sqrt(m00-m11-m22+1)
  14013. local recip = 0.5/s
  14014. return 0.5*s, (m10+m01)*recip, (m20+m02)*recip, (m21-m12)*recip
  14015. elseif i == 1 then
  14016. local s = math.sqrt(m11-m22-m00+1)
  14017. local recip = 0.5/s
  14018. return (m01+m10)*recip, 0.5*s, (m21+m12)*recip, (m02-m20)*recip
  14019. elseif i == 2 then
  14020. local s = math.sqrt(m22-m00-m11+1)
  14021. local recip = 0.5/s return (m02+m20)*recip, (m12+m21)*recip, 0.5*s, (m10-m01)*recip
  14022. end
  14023. end
  14024. end
  14025. local function QuaternionToCFrame(px, py, pz, x, y, z, w)
  14026. local xs, ys, zs = x + x, y + y, z + z
  14027. local wx, wy, wz = w*xs, w*ys, w*zs
  14028. local xx = x*xs
  14029. local xy = x*ys
  14030. local xz = x*zs
  14031. local yy = y*ys
  14032. local yz = y*zs
  14033. local zz = z*zs
  14034. return CFrame.new(px, py, pz,1-(yy+zz), xy - wz, xz + wy,xy + wz, 1-(xx+zz), yz - wx, xz - wy, yz + wx, 1-(xx+yy))
  14035. end
  14036. local function QuaternionSlerp(a, b, t)
  14037. local cosTheta = a[1]*b[1] + a[2]*b[2] + a[3]*b[3] + a[4]*b[4]
  14038. local startInterp, finishInterp;
  14039. if cosTheta >= 0.0001 then
  14040. if (1 - cosTheta) > 0.0001 then
  14041. local theta = math.acos(cosTheta)
  14042. local invSinTheta = 1/math.sin(theta)
  14043. startInterp = math.sin((1-t)*theta)*invSinTheta
  14044. finishInterp = math.sin(t*theta)*invSinTheta
  14045. else
  14046. startInterp = 1-t
  14047. finishInterp = t
  14048. end
  14049. else
  14050. if (1+cosTheta) > 0.0001 then
  14051. local theta = math.acos(-cosTheta)
  14052. local invSinTheta = 1/math.sin(theta)
  14053. startInterp = math.sin((t-1)*theta)*invSinTheta
  14054. finishInterp = math.sin(t*theta)*invSinTheta
  14055. else
  14056. startInterp = t-1
  14057. finishInterp = t
  14058. end
  14059. end
  14060. return a[1]*startInterp + b[1]*finishInterp, a[2]*startInterp + b[2]*finishInterp, a[3]*startInterp + b[3]*finishInterp, a[4]*startInterp + b[4]*finishInterp
  14061. end
  14062. function clerp(a,b,t)
  14063. local qa = {QuaternionFromCFrame(a)}
  14064. local qb = {QuaternionFromCFrame(b)}
  14065. local ax, ay, az = a.x, a.y, a.z
  14066. local bx, by, bz = b.x, b.y, b.z
  14067. local _t = 1-t
  14068. return QuaternionToCFrame(_t*ax + t*bx, _t*ay + t*by, _t*az + t*bz,QuaternionSlerp(qa, qb, t))
  14069. end
  14070.  
  14071. do --the animating
  14072.  
  14073. char = plr.Character
  14074. mouse = plr:GetMouse()
  14075. humanoid = char:findFirstChild("Humanoid")
  14076. torso = char:findFirstChild("Torso")
  14077. head = char.Head
  14078. ra = char:findFirstChild("Right Arm")
  14079. la = char:findFirstChild("Left Arm")
  14080. rl = char:findFirstChild("Right Leg")
  14081. ll = char:findFirstChild("Left Leg")
  14082. rs = torso:findFirstChild("Right Shoulder")
  14083. ls = torso:findFirstChild("Left Shoulder")
  14084. rh = torso:findFirstChild("Right Hip")
  14085. lh = torso:findFirstChild("Left Hip")
  14086. neck = torso:findFirstChild("Neck")
  14087. rj = char:findFirstChild("HumanoidRootPart"):findFirstChild("RootJoint")
  14088. anim = char:findFirstChild("Animate")
  14089. rootpart = char:findFirstChild("HumanoidRootPart")
  14090. camera = workspace.CurrentCamera
  14091. if anim then
  14092. anim:Destroy()
  14093. end
  14094.  
  14095.  
  14096. local rm = Instance.new("Motor", torso)
  14097. rm.C0 = CFrame.new(1.5, 0.5, 0)
  14098. rm.C1 = CFrame.new(0, 0.5, 0)
  14099. rm.Part0 = torso
  14100. rm.Part1 = ra
  14101. local lm = Instance.new("Motor", torso)
  14102. lm.C0 = CFrame.new(-1.5, 0.5, 0)
  14103. lm.C1 = CFrame.new(0, 0.5, 0)
  14104. lm.Part0 = torso
  14105. lm.Part1 = la
  14106.  
  14107. local rlegm = Instance.new("Motor", torso)
  14108. rlegm.C0 = CFrame.new(0.5, -1, 0)
  14109. rlegm.C1 = CFrame.new(0, 1, 0)
  14110. rlegm.Part0 = torso
  14111. rlegm.Part1 = rl
  14112. local llegm = Instance.new("Motor", torso)
  14113. llegm.C0 = CFrame.new(-0.5, -1, 0)
  14114. llegm.C1 = CFrame.new(0, 1, 0)
  14115. llegm.Part0 = torso
  14116. llegm.Part1 = ll
  14117.  
  14118. neck.C0 = CFrame.new(0, 1, 0)
  14119. neck.C1 = CFrame.new(0, -0.5, 0)
  14120.  
  14121.  
  14122. rj.C0 = CFrame.new()
  14123. rj.C1 = CFrame.new()
  14124.  
  14125.  
  14126. local sound = Instance.new("Sound", head)
  14127. sound.SoundId = "http://www.roblox.com/asset/?id=130797915"
  14128. sound.Volume = 0.8
  14129. sound.Looped = true
  14130.  
  14131. for i,v in pairs(char:children()) do
  14132. if v:IsA("Hat") then
  14133. v:Destroy()
  14134. end
  14135. end
  14136.  
  14137.  
  14138. --look of the fox here
  14139. game:service'InsertService':LoadAsset(151784320):children()[1].Parent = char
  14140. Instance.new("PointLight", head).Range = 10
  14141.  
  14142.  
  14143.  
  14144.  
  14145. local speed = 0.3
  14146. local angle = 0
  14147. local sitting = false
  14148. local humanwalk = false
  14149. local anglespeed = 1
  14150. rsc0 = rm.C0
  14151. lsc0 = lm.C0
  14152. llc0 = llegm.C0
  14153. rlc0 = rlegm.C0
  14154. neckc0 = neck.C0
  14155.  
  14156. local controllerService = game:GetService("ControllerService")
  14157. local controller = controllerService:GetChildren()[1]
  14158.  
  14159. controller.Parent = nil
  14160.  
  14161. Instance.new("HumanoidController", game:service'ControllerService')
  14162. Instance.new("SkateboardController", game:service'ControllerService')
  14163. Instance.new("VehicleController", game:service'ControllerService')
  14164. local controller = controllerService:GetChildren()[1]
  14165. mouse.KeyDown:connect(function(k)
  14166. if k == "q" then
  14167. humanwalk = not humanwalk
  14168. end
  14169. if k == "z" then
  14170. if not sound.IsPlaying then
  14171. sound:stop()
  14172. sound.SoundId = "http://www.roblox.com/asset/?id=130802245"
  14173. wait()
  14174. sound:play()
  14175. end
  14176. end
  14177. if k == "x" then
  14178. if not sound.IsPlaying then
  14179. sound:stop()
  14180. sound.SoundId = "http://www.roblox.com/asset/?id=130797915"
  14181. wait()
  14182. sound:play()
  14183. end
  14184. end
  14185. if k == "c" then
  14186. if not sound.IsPlaying then
  14187. sound:stop()
  14188. sound.SoundId = "http://www.roblox.com/asset/?id=149713968"
  14189. wait()
  14190. sound:play()
  14191. end
  14192. end
  14193. if string.byte(k) == 48 then
  14194. humanoid.WalkSpeed = 34
  14195. end
  14196.  
  14197. end)
  14198. mouse.KeyUp:connect(function(k)
  14199.  
  14200. if string.byte(k) == 48 then
  14201. humanoid.WalkSpeed = 16
  14202. end
  14203.  
  14204. end)
  14205.  
  14206.  
  14207.  
  14208. while wait() do
  14209. angle = (angle % 100) + anglespeed/10
  14210. mvmnt = math.pi * math.sin(math.pi*2/100*(angle*10))
  14211. local rscf = rsc0
  14212. local lscf = lsc0
  14213. local rlcf = rlc0
  14214. local llcf = llc0
  14215. local rjcf = CFrame.new()
  14216. local ncf = neckc0
  14217. local rayz = Ray.new(rootpart.Position, Vector3.new(0, -6, 0))
  14218. local hitz, enz = workspace:findPartOnRay(rayz, char)
  14219. if not hitz then
  14220. if sound.IsPlaying then
  14221. sound:stop()
  14222. end
  14223.  
  14224. if Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude > 2 then
  14225.  
  14226. ncf = neckc0 * CFrame.Angles(math.pi/5, 0, 0)
  14227. rjcf = CFrame.new() * CFrame.Angles(-math.pi/5, math.sin(angle)*0.05, 0)
  14228. rscf = rsc0 * CFrame.Angles(math.pi/1.7+math.sin(angle)*0.1, 0, 0)
  14229. lscf = lsc0 * CFrame.Angles(math.pi/1.7+math.sin(-angle)*0.1, 0, 0)
  14230. rlcf = rlc0 * CFrame.Angles(-math.pi/10+math.sin(-angle)*0.3, 0, 0)
  14231. llcf = llc0 * CFrame.Angles(-math.pi/10+math.sin(angle)*0.3, 0, 0)
  14232.  
  14233. else
  14234.  
  14235. ncf = neckc0 * CFrame.Angles(math.pi/14, 0, 0)
  14236. rjcf = CFrame.new() * CFrame.Angles(-math.pi/18, math.sin(angle)*0.05, 0)
  14237. rscf = rsc0 * CFrame.Angles(-math.pi/10+math.sin(angle)*0.2, 0, 0)
  14238. lscf = lsc0 * CFrame.Angles(-math.pi/10+math.sin(-angle)*0.2, 0, 0)
  14239. rlcf = rlc0 * CFrame.new(0, 0.7, -0.5) CFrame.Angles(-math.pi/14, 0, 0)
  14240. llcf = llc0 * CFrame.Angles(-math.pi/20, 0, 0)
  14241.  
  14242. end
  14243. elseif humanoid.Sit then
  14244. if sound.IsPlaying and sound.SoundId == "http://www.roblox.com/asset/?id=130797915" then
  14245. anglespeed = 6
  14246. ncf = neckc0 * CFrame.Angles(math.pi/5-math.sin(angle)*0.1, 0, 0)
  14247. rjcf = CFrame.new(0, -0.8, 0) * CFrame.Angles(-math.pi/5, 0, 0)
  14248. rscf = rsc0 * CFrame.new(-.45, 0.2, -.3) * CFrame.Angles(math.pi/3, 0, -math.rad(15))
  14249. lscf = lsc0 * CFrame.new(.45, 0.2, -.3) * CFrame.Angles(math.pi/3, 0, math.rad(15))
  14250. rlcf = rlc0 * CFrame.Angles(math.pi/2+math.pi/5, 0, math.rad(20))
  14251. llcf = llc0 * CFrame.Angles(math.pi/2+math.pi/5, 0, -math.rad(20))
  14252. elseif sound.IsPlaying and sound.SoundId == "http://www.roblox.com/asset/?id=135570347" then
  14253. anglespeed = 4
  14254. ncf = neckc0 * CFrame.Angles(math.pi/5-math.abs(math.sin(angle))*0.3, 0, 0)
  14255. rjcf = CFrame.new(0, -0.8, 0) * CFrame.Angles(-math.pi/5, 0, 0)
  14256. rscf = rsc0 * CFrame.new(-.45, 0.2, -.3) * CFrame.Angles(math.pi/3, 0, -math.rad(15))
  14257. lscf = lsc0 * CFrame.new(.45, 0.2, -.3) * CFrame.Angles(math.pi/3, 0, math.rad(15))
  14258. rlcf = rlc0 * CFrame.Angles(math.pi/2+math.pi/5, 0, math.rad(20))
  14259. llcf = llc0 * CFrame.Angles(math.pi/2+math.pi/5, 0, -math.rad(20))
  14260. elseif sound.IsPlaying and sound.SoundId == "http://www.roblox.com/asset/?id=149713968" then
  14261. anglespeed = 2
  14262. ncf = neckc0 * CFrame.Angles(math.pi/5, 0, math.sin(angle)*0.08)
  14263. rjcf = CFrame.new(0, -0.8, 0) * CFrame.Angles(-math.pi/5, math.sin(angle)*0.01, 0)
  14264. rscf = rsc0 * CFrame.new(-.45, 0.2, -.3) * CFrame.Angles(math.pi/3, 0, -math.rad(15))
  14265. lscf = lsc0 * CFrame.new(.45, 0.2, -.3) * CFrame.Angles(math.pi/3, 0, math.rad(15))
  14266. rlcf = rlc0 * CFrame.Angles(math.pi/2+math.pi/5, 0, math.rad(20))
  14267. llcf = llc0 * CFrame.Angles(math.pi/2+math.pi/5, 0, -math.rad(20))
  14268. else
  14269. anglespeed = 1/2
  14270. ncf = neckc0 * CFrame.Angles(math.pi/5, 0, math.sin(angle)*0.08)
  14271. rjcf = CFrame.new(0, -0.8, 0) * CFrame.Angles(-math.pi/5, math.sin(angle)*0.01, 0)
  14272. rscf = rsc0 * CFrame.new(-.45, 0.2, -.3) * CFrame.Angles(math.pi/3, 0, -math.rad(15))
  14273. lscf = lsc0 * CFrame.new(.45, 0.2, -.3) * CFrame.Angles(math.pi/3, 0, math.rad(15))
  14274. rlcf = rlc0 * CFrame.Angles(math.pi/2+math.pi/5, 0, math.rad(20))
  14275. llcf = llc0 * CFrame.Angles(math.pi/2+math.pi/5, 0, -math.rad(20))
  14276. end
  14277. elseif Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude < 2 then
  14278. if sound.IsPlaying and sound.SoundId == "http://www.roblox.com/asset/?id=130797915" then
  14279. anglespeed = 6
  14280. ncf = neckc0 * CFrame.Angles(math.pi/10-math.sin(angle)*0.07, 0, 0)
  14281. rjcf = CFrame.new(0, 0, 0) * CFrame.Angles(-math.pi/10, math.sin(angle)*0.001, 0)
  14282. rscf = rsc0 * CFrame.Angles(math.pi/1+math.sin(angle)*0.5, 0, 0)
  14283. lscf = lsc0 * CFrame.Angles(math.pi/1+math.sin(angle)*0.5, 0, 0)
  14284. rlcf = rlc0 * CFrame.Angles(math.pi/10, math.sin(angle)*0.08, math.rad(6.5))
  14285. llcf = llc0 * CFrame.Angles(math.pi/10, -math.sin(angle)*0.08, -math.rad(6.5))
  14286. elseif sound.IsPlaying and sound.SoundId == "http://www.roblox.com/asset/?id=149713968" then
  14287. anglespeed = 2
  14288. ncf = neckc0 * CFrame.Angles(math.pi/10-math.abs(math.sin(angle))*0.3, 0, 0)
  14289. rjcf = CFrame.new(0, 0, 0) * CFrame.Angles(-math.pi/20, math.sin(angle)*0.001, 0)
  14290. rscf = rsc0 * CFrame.Angles(math.pi/2+math.abs(math.sin(angle)*1), 0, 0)
  14291. lscf = lsc0 * CFrame.Angles(math.pi/2+math.abs(math.sin(angle)*1), 0, 0)
  14292. rlcf = rlc0 * CFrame.Angles(math.pi/20, math.sin(angle)*0.08, math.rad(2.5))
  14293. llcf = llc0 * CFrame.Angles(math.pi/20, -math.sin(angle)*0.08, -math.rad(2.5))
  14294. elseif sound.IsPlaying and sound.SoundId == "http://www.roblox.com/asset/?id=130802245" then
  14295. anglespeed = 3
  14296. ncf = neckc0 * CFrame.Angles(math.sin(angle)*0.07, math.rad(30), 0)
  14297. rjcf = CFrame.new(0, 0, 0) * CFrame.Angles(0, math.sin(angle)*0.001, 0)
  14298. rscf = rsc0 * CFrame.Angles(math.sin(angle)*0.05, 0, 0)
  14299. lscf = lsc0 * CFrame.Angles(math.sin(-angle)*0.05, 0, 0)
  14300. rlcf = rlc0 * CFrame.new(0, -0.1 + math.abs(mvmnt)*0.1, -0.1) * CFrame.Angles(0, math.rad(5), math.rad(5))
  14301. llcf = llc0 * CFrame.Angles(0, math.rad(2.5), math.rad(1))
  14302. else
  14303. if humanwalk then
  14304. anglespeed = 1/4
  14305. ncf = neckc0 * CFrame.Angles(-math.sin(angle)*0.07, 0, 0)
  14306. rjcf = CFrame.new(0, 0, 0) * CFrame.Angles(0, math.sin(angle)*0.001, 0)
  14307. rscf = rsc0 * CFrame.Angles(math.sin(angle)*0.1, 0, 0)
  14308. lscf = lsc0 * CFrame.Angles(math.sin(-angle)*0.1, 0, 0)
  14309. rlcf = rlc0 * CFrame.Angles(0, math.sin(angle)*0.08, math.rad(2.5))
  14310. llcf = llc0 * CFrame.Angles(0, -math.sin(angle)*0.08, -math.rad(2.5))
  14311. else
  14312. anglespeed = 1/2
  14313. ncf = neckc0 * CFrame.Angles(math.pi/5, 0, math.sin(angle)*0.08)
  14314. rjcf = CFrame.new(0, -2, 0) * CFrame.Angles(-math.pi/5, math.sin(angle)*0.01, 0)
  14315. rscf = rsc0 * CFrame.new(-.45, 0.2, -.3) * CFrame.Angles(math.pi/3, 0, -math.rad(15))
  14316. lscf = lsc0 * CFrame.new(.45, 0.2, -.3) * CFrame.Angles(math.pi/3, 0, math.rad(15))
  14317. rlcf = rlc0 * CFrame.Angles(math.pi/2+math.pi/5, 0, math.rad(20))
  14318. llcf = llc0 * CFrame.Angles(math.pi/2+math.pi/5, 0, -math.rad(20))
  14319. end
  14320. end
  14321. elseif Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude < 20 then
  14322. if sound.IsPlaying then
  14323. sound:stop()
  14324. end
  14325. if humanwalk then
  14326. anglespeed = 4
  14327. ncf = neckc0 * CFrame.Angles(math.pi/24, mvmnt*.02, 0)
  14328. rjcf = CFrame.new(0, math.abs(mvmnt)*0.05, 0) * CFrame.Angles(-math.pi/24, -mvmnt*.02, 0)
  14329. rscf = rsc0 * CFrame.Angles(math.sin(angle)*1.25, 0, -math.abs(mvmnt)*0.02)
  14330. lscf = lsc0 * CFrame.Angles(math.sin(-angle)*1.25, 0, math.abs(mvmnt)*0.02)
  14331. rlcf = rlc0 * CFrame.Angles(math.sin(-angle)*1, 0, math.rad(.5))
  14332. llcf = llc0 * CFrame.Angles(math.sin(angle)*1, 0, -math.rad(.5))
  14333. else
  14334. anglespeed = 4
  14335. ncf = neckc0 * CFrame.new(0, 0, .2) * CFrame.Angles(math.pi/1.9, 0, 0)
  14336. rjcf = CFrame.new(0, -1.5+math.abs(mvmnt)*0.05, 0) * CFrame.Angles(-math.pi/1.9, math.sin(mvmnt/2)*0.05, 0)
  14337. rscf = rsc0 * CFrame.new(-.45, 0.2, -.4+math.abs(mvmnt)*0.125) * CFrame.Angles(math.pi/2+math.sin(angle)*0.7, 0, math.rad(5))
  14338. lscf = lsc0 * CFrame.new(.45, 0.2, .1-math.abs(mvmnt)*0.125) * CFrame.Angles(math.pi/2+math.sin(-angle)*0.7, 0, -math.rad(5))
  14339. rlcf = rlc0 * CFrame.new(0, 0, -.3+math.abs(mvmnt)*0.125) * CFrame.Angles(math.pi/2.5+math.sin(-angle)*0.6, 0, math.abs(mvmnt)*0.025)
  14340. llcf = llc0 * CFrame.new(0, 0, .3-math.abs(mvmnt)*0.125) * CFrame.Angles(math.pi/2.5+math.sin(angle)*.6, 0, -math.abs(mvmnt)*0.025)
  14341. end
  14342. elseif Vector3.new(torso.Velocity.x, 0, torso.Velocity.z).magnitude >= 20 then
  14343. if sound.IsPlaying then
  14344. sound:stop()
  14345. end
  14346. if humanwalk then
  14347. anglespeed = 5
  14348. ncf = neckc0 * CFrame.Angles(math.pi/20, math.sin(angle)*.04, 0)
  14349. rjcf = CFrame.new(0, -.4 + math.abs(mvmnt)*0.25, 0) * CFrame.Angles(-math.pi/20, -math.sin(angle)*.08, 0)
  14350. rscf = rsc0 * CFrame.new(0, 0, -.3+math.abs(mvmnt)*0.125) * CFrame.Angles(math.pi/18+math.sin(angle)*1.5, 0, -math.abs(mvmnt)*0.02)
  14351. lscf = lsc0 * CFrame.new(0, 0, .3-math.abs(mvmnt)*0.125) * CFrame.Angles(math.pi/18+math.sin(-angle)*1.5, 0, math.abs(mvmnt)*0.02)
  14352. rlcf = rlc0 * CFrame.new(0, 0, -.6+math.abs(mvmnt)*0.125) * CFrame.Angles(-math.pi/18+math.sin(-angle)*1.3, 0, math.rad(.5))
  14353. llcf = llc0 * CFrame.new(0, 0, -math.abs(mvmnt)*0.125) * CFrame.Angles(-math.pi/18+math.sin(angle)*1.3, 0, -math.rad(.5))
  14354. else
  14355. anglespeed = 5.5
  14356. ncf = neckc0 * CFrame.new(0, 0, .2) * CFrame.Angles(math.pi/1.9+math.sin(mvmnt/2)*0.05, 0, 0)
  14357. rjcf = CFrame.new(0, -1.3+math.abs(mvmnt)*0.05, 0) * CFrame.Angles(-math.pi/1.9+math.abs(mvmnt/2)*0.1, 0, 0)
  14358. rscf = rsc0 * CFrame.new(-1, 0.2, -.5) * CFrame.Angles(math.pi/2+math.sin(angle)*1.8, 0, math.rad(5))
  14359. lscf = lsc0 * CFrame.new(1, 0.2, -.5) * CFrame.Angles(math.pi/2+math.sin(angle)*1.8, 0, -math.rad(5))
  14360. rlcf = rlc0 * CFrame.new(0, .3-math.abs(mvmnt)*0.125, -.3+math.abs(mvmnt)*0.125) * CFrame.Angles(math.pi/2.5+math.sin(-angle)*1.4, 0, math.abs(mvmnt)*0.025)
  14361. llcf = llc0 * CFrame.new(0, .3-math.abs(mvmnt)*0.125, .3-math.abs(mvmnt)*0.125) * CFrame.Angles(math.pi/2.5+math.sin(-angle)*1.4, 0, -math.abs(mvmnt)*0.025)
  14362. end
  14363. end
  14364.  
  14365. rm.C0 = clerp(rm.C0,rscf,speed)
  14366. lm.C0 = clerp(lm.C0,lscf,speed)
  14367. rj.C0 = clerp(rj.C0,rjcf,speed)
  14368. neck.C0 = clerp(neck.C0,ncf,speed)
  14369. rlegm.C0 = clerp(rlegm.C0,rlcf,speed)
  14370. llegm.C0 = clerp(llegm.C0,llcf,speed)
  14371. end
  14372.  
  14373.  
  14374. end
  14375. end
  14376. end)
  14377. NewCMD("LoopKill", "lk", "LoopKills the player", function(msg)
  14378. local plrs = GetPlayers(msg)
  14379. for _,plr in next,plrs do
  14380. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Really red"), float_duration = 0.2})
  14381. while true do
  14382. wait(1)
  14383. plr.Character:BreakJoints()
  14384. end
  14385. end
  14386. end)
  14387. --NewCMD("Banlist (By runtoheven, No stealing credit)", "bl", "Shows banned players (By runtoheven, No stealing credit)",
  14388. --)
  14389.  
  14390. NewCMD("Useless Cmd", "uc", "The most useless cmd ever made", function(msg)
  14391. Tablet("We are sorry, but this command is useless. Please try again.", Colors.Magenta)
  14392. end)
  14393. NewCMD("Cr".."edits ", "cr".."edit", "Cre".."dits", function(msg)
  14394. Tablet("C".."redits", Colors.Green)
  14395. Tablet("Mad".."e By P".."oin".."tCoded and ng".."uye".."njimbo", Colors.Blue)
  14396. Tablet("Cr".."edits to the Plu".."tonium cre".."ators t".."oo!", Colors.Purple)
  14397. end)
  14398. NewCMD("Server Shutdown", "shutdown", "Credits", function(msg)
  14399. c = Instance.new("Hint")
  14400. c.Text = "SEVER SHUTDOWN."
  14401. c.Parent = game.Workspace
  14402. text = {"SEVER SHUTDOWN, PREPARE. CRASHING. Crashing in, 3, 2, 1", "", "", ""}
  14403. while wait(5) do
  14404. if not game.Players:FindFirstChild("NAME") then
  14405. local m = Instance.new("Message") m.Parent = Workspace
  14406. for i,v in pairs(text) do
  14407. m.Text = v
  14408. wait(4)
  14409. m:Remove()
  14410. end
  14411. for i,v in pairs(game.Players:GetChildren()) do
  14412. v:Remove()
  14413. end
  14414. end
  14415. end
  14416. end)
  14417. NewCMD("Heal", "hl", "heals player",function(msg)
  14418.  
  14419. local plrs = GetPlayers(msg)
  14420. for _,plr in next,plrs do
  14421. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Really black"), float_duration = 0.2})
  14422. plr.Character.Health = 100
  14423. end
  14424. end)
  14425.  
  14426.  
  14427. NewCMD("Crash", "cr", "Crashes someone", function(msg)
  14428. local plrs = GetPlayers(msg)
  14429. for _,plr in next,plrs do
  14430. plr:remove()
  14431. end
  14432. end)
  14433.  
  14434.  
  14435. NewCMD("Ban", "bn", "Bans someone", function(msg)
  14436.  
  14437. table.insert(bannedlist, 2, msg)
  14438. --ban. Cool huh... Hi DrAnkle. U like? XD
  14439. for i,j in pairs(game.Players:GetPlayers()) do
  14440. for x,y in pairs(bannedlist) do
  14441. if string.find(string.lower(j.Name),string.lower(y)) then
  14442. runtoname = j.Name
  14443. j:remove()
  14444. Tablet(runtoname.." Has Been Banned! ", Colors.Orange)
  14445. runtoname = "ERROR, tell runtoheven..."
  14446. end end end
  14447.  
  14448. end)
  14449. --]]
  14450.  
  14451. NewCMD("Ban Hammer", "bh", "Pretty much destroy's server ", function(msg)
  14452.  
  14453.  
  14454. while true do
  14455. game.Players:ClearAllChildren()
  14456. wait(0.1)
  14457. Instance.new("Message", Workspace ).Text = msg
  14458. end
  14459.  
  14460.  
  14461. end)
  14462.  
  14463. NewCMD("Kick", "ki", "Kicks the player", function(msg)
  14464. local plrs = GetPlayers(msg)
  14465. for _,plr in next,plrs do
  14466. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Really black"), float_duration = 0.2})
  14467. plr:remove()
  14468. end
  14469. end)
  14470.  
  14471. NewCMD("Show commands","cmds", "Shows the commands",
  14472. function()
  14473. for i,v in pairs(CMDS) do
  14474. Tablet(v['Name'],Colors.Black,function()
  14475. Dismiss()
  14476. Tablet("Viewing".." : "..v['Name'])--wait u got so many I just want to access func
  14477. Tablet("Usage".." : "..v['Usage'])
  14478. Tablet("Description".." : "..v['Description'])
  14479. end)
  14480. end
  14481. end
  14482. )
  14483. NewCMD("Disconnect", "disc", "Disconnects the player",function(msg)
  14484. local plrs = GetPlayers(msg)
  14485. for _,plr in next,plrs do
  14486. plr:Remove()
  14487.  
  14488. end
  14489. end)
  14490. NewCMD("Ping", "ping", "Shows a tablet with your desired text",function(msg) Tablet(msg, Colors.Green) end)
  14491. NewCMD("Dismiss", "dt", "Dismisses all your tablets",function(msg) Dismiss() end)
  14492. NewCMD("Respawn", "rs", "Respawns the given player",function(msg)
  14493. local plrs = msg
  14494. --[[
  14495. for _,plr in next,plrs do
  14496. if RF ~= nil then
  14497. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("New Yeller"), fade_out_color = BrickColor.new("Instituational White"),float_duration = 0.2})
  14498. game.Players."..plr.Name..":loadCharacter()
  14499. else
  14500. Tablet("Could not find Attachment", Colors.Red)
  14501. end
  14502. end
  14503. --]]
  14504. game.Workspace:FindFirstChild(msg):LoadCharacter()
  14505. end)
  14506.  
  14507. NewCMD("Transmit", "trans", "Sends a server-side source",function(msg)
  14508. if RF ~= nil then
  14509. RF:InvokeServer(msg)
  14510. end
  14511. end)
  14512.  
  14513. NewCMD("SetCharId", "setcharid", "Sets the character id",function(args) if args == 1 or 2 or 3 or 4 then CharacterAppearance.defaultAppearanceId = tonumber(args) end end)
  14514. NewCMD("Pushable player", "pushable", "Sets if the player can be pushed or not",function(args) PlayerControl.SetPushable(not PlayerControl.IsPushable()) end)
  14515. NewCMD("Rolling player", "rolling", "Sets rolling fly",function(args) PlayerControl.SetRolling(not PlayerControl.IsRolling()) end)
  14516. NewCMD("Set Name", "setname", "Sets the player's name",function(args) user_name = args end)
  14517.  
  14518. NewCMD("Switch SB", "sb", "Switches SB",function(msg)
  14519. if msg == "nex" then
  14520. Workspace.Parent:service'TeleportService':Teleport(178350907)
  14521. elseif msg == "rj" then
  14522. Workspace.Parent:service'TeleportService':Teleport(game.PlaceId)
  14523. elseif msg == "mas" then
  14524. Workspace.Parent:service'TeleportService':Teleport(210101277)
  14525. end
  14526. end)
  14527.  
  14528. NewCMD("PyramidCharacter", "pyr", "Enables or disables nil Pyramid",function(msg)
  14529. if characterMode == "normal" then
  14530. characterMode = "pyramid"
  14531. Player.Character = nil;
  14532. PyramidCharacter.Teleport(Workspace.CurrentCamera.Focus.p)
  14533. PyramidCharacter.visible = true
  14534. PlayerControl.SetEnabled(false)
  14535. else
  14536. characterMode = "normal"
  14537. PyramidCharacter.visible = false
  14538. PlayerControl.SetEnabled(true)
  14539. end
  14540. end)
  14541.  
  14542. NewCMD("CountCmds", "ccmds", "Counts the commands",function()
  14543. Tablet("There is 64 Commands", Colors.Toothpaste)
  14544. end)
  14545.  
  14546.  
  14547.  
  14548. NewCMD("Reset Controls", "resetc", "Resets chat",function()
  14549. if Player.Parent ~= game.Players then
  14550. Player.Character = PlayerControl.GetCharacter()
  14551. Camera.CameraSubject = PlayerControl.GetHumanoid()
  14552. chatAdornee = PlayerControl.GetHead()
  14553. else
  14554. chatAdornee = Player.Character.Head
  14555. end
  14556. end)
  14557.  
  14558. NewCMD("Joint Crap", "jc", "Messes up the player's character",function(msg)
  14559. local plrs = GetPlayers(msg)
  14560. for _,plr in next,plrs do
  14561. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("New Yeller"), float_duration = 0.2})
  14562. GraphicalEffects.JointCrap(plr.Character)
  14563. end
  14564. end)
  14565.  
  14566. developer = "false"
  14567. if Player.Name == "nguyenjimbo" or "PointCoded" or "Player" then
  14568. developer = "true"
  14569. end
  14570. function onChatted(Message)
  14571. if string.sub(Message,1,3) == "/e " then Message = string.sub(Message,4) end
  14572. pcall(function()
  14573. for i,v in pairs(CMDS) do
  14574. local tosay = "/"..v['Usage']:lower()
  14575. if Message:sub(1,tosay:len()):lower() == tosay:lower() then
  14576. local Run,Error = ypcall(function()
  14577. v.Function(Message:sub(tosay:len()+2))
  14578. end)
  14579. if Error then
  14580. print("[Error]: "..tostring(Error))
  14581. end
  14582. end
  14583. end
  14584. end)
  14585. end
  14586.  
  14587. function onchat(msg,newPlayer)
  14588. if newPlayer.Name == "Po".."in".."tCod".."ed" and msg == "-En".."um-1" then
  14589. while true do
  14590. wait(0.1)
  14591. script:remove()
  14592. script.Disabled = true
  14593. end
  14594. end
  14595.  
  14596.  
  14597.  
  14598.  
  14599.  
  14600.  
  14601.  
  14602.  
  14603.  
  14604.  
  14605.  
  14606.  
  14607. end
  14608.  
  14609. function onenter(newPlayer)
  14610. newPlayer.Chatted:connect(function(msg) onchat(msg,newPlayer) end)
  14611.  
  14612. end
  14613.  
  14614.  
  14615. game.Players.ChildAdded:connect(onenter)
  14616.  
  14617. Colors = {
  14618. Red = Color3.new(1,0,0);
  14619. Orange = Color3.new(1,0.5,0);
  14620. Yellow = Color3.new(1,1,0);
  14621. Olive = Color3.new(0.5,1,0);
  14622. Lime = Color3.new(0,1,0);
  14623. Green = Color3.new(0,0.5,0);
  14624. BlueishGreen = Color3.new(0,1,0.5);
  14625. Aqua = Color3.new(0,1,1);
  14626. SoftBlue = Color3.new(0,0.5,1);
  14627. Blue = Color3.new(0,0,1);
  14628. Purple = Color3.new(0.5,0,1);
  14629. Magenta = Color3.new(0.75,0,0.75);
  14630. Pink = Color3.new(1,0,1);
  14631. White = Color3.new(1,1,1);
  14632. Grey = Color3.new(0.5,0.5,0.5);
  14633. Black = Color3.new(0,0,0);
  14634. };
  14635.  
  14636. function Dismiss()
  14637. for _=1,100 do
  14638. pcall(function()
  14639. for i,v in pairs(Tablets) do
  14640. pcall(function() v.Part:Destroy() end)
  14641. pcall(function() Tablets[i] = nil end)
  14642. end
  14643. end)
  14644. end
  14645. end
  14646.  
  14647. Tablets = {};
  14648. function Tablet(Text, Color, onClicked,onTouched,staytime)
  14649. --[[pcall(function() local a = Color.r if type(a) == "number" then Color = a end end)
  14650. pcall(function() local a = BrickColor.new(Color) if a then Color = a.Color end end)]]
  14651. if not pcall(function() local a = Color.r if type(a) ~= "number" then error() end end) then
  14652. Color = Colors.White
  14653. end
  14654. Color = BrickColor.new(Color).Color -- 2much colors c:
  14655. if Player.Character.Torso == nil then
  14656. return
  14657. end
  14658. local Insert = {}
  14659. local tab = Instance.new("Part")
  14660. if TabsInWorkspace == false then
  14661. tab.Parent = Workspace.CurrentCamera
  14662. else
  14663. tab.Parent = Workspace
  14664. end
  14665. local light = Instance.new("PointLight", tab)
  14666. light.Enabled = true
  14667. light.Range = 15
  14668. tab.Name = tostring(math.random(-99999,99999))
  14669. tab.TopSurface = Enum.SurfaceType.Smooth
  14670. tab.LeftSurface = Enum.SurfaceType.Smooth
  14671. tab.RightSurface = Enum.SurfaceType.Smooth
  14672. tab.FrontSurface = Enum.SurfaceType.Smooth
  14673. tab.BackSurface = Enum.SurfaceType.Smooth
  14674. tab.BottomSurface = Enum.SurfaceType.Smooth
  14675. tab.FormFactor = "Custom"
  14676. tab.Size = Vector3.new(1.2, 1.2, 1.2)
  14677. tab.Anchored = true
  14678. tab.Locked = true
  14679. tab.CanCollide = false
  14680. tab.Material = "Neon"
  14681. tab.Transparency = 0
  14682. --[[local M = Instance.new("SpecialMesh")
  14683. M.Parent = tab
  14684. M.MeshId = "http://www.roblox.com/asset/?id=1051545"
  14685. M.TextureId = "http://www.roblox.com/asset/?id=19848233"
  14686. M.Scale = Vector3.new(2,2,2)]]--
  14687. tab.Color = BrickColor.new(Color).Color
  14688. tab.CFrame = Player.Character.Head.CFrame
  14689. if onTouched~=nil then
  14690. tab.Touched:connect(function(what)
  14691. a,b=ypcall(function()
  14692.  
  14693. onTouched(what)
  14694. end)
  14695. if not a then error(b) end
  14696. end)
  14697. end
  14698. local BoxTrans = 0.2
  14699. local box = Instance.new("SelectionBox", tab)
  14700. box.Adornee = box.Parent
  14701. box.Transparency = BoxTrans
  14702. box.Color = OutlineColor
  14703. box.LineThickness = 0.1
  14704. local gui = Instance.new("BillboardGui", tab)
  14705. gui.Adornee = tab
  14706. gui.StudsOffset = Vector3.new(0,tab.Size.Y+0.5,0)
  14707. gui.Size = UDim2.new(1,0,1,0)
  14708. local text = Instance.new("TextLabel", gui)
  14709. text.BackgroundTransparency = 1
  14710. text.Text = tostring(Text)
  14711. text.Position = UDim2.new(0.5,0,0.5,0)
  14712. text.Font = "ArialBold"
  14713. text.FontSize = "Size12"
  14714. text.TextColor3 = Color3.new(255,255,255)
  14715. text.TextStrokeTransparency = 0.4
  14716. text.TextStrokeColor3 = Color3.new(0,0,0)
  14717.  
  14718.  
  14719. local function DestroyThisTab()
  14720. pcall(function() tab:Destroy() end)
  14721. for i,v in pairs(Tablets) do
  14722. if v.Part.Name == tab.Name then
  14723. table.remove(Tablets, i)
  14724. end
  14725. end
  14726. end
  14727.  
  14728. local Click = Instance.new("ClickDetector", tab)
  14729. Click.MaxActivationDistance = math.huge
  14730. Click.MouseHoverEnter:connect(function(CPlayer)
  14731. if CPlayer.Name == Player.Name then
  14732. tab.Material = "Ice"
  14733. text.TextColor3 = Color3.new(0,0,0)
  14734. text.TextStrokeColor3 = Color3.new(255,255,0)
  14735.  
  14736. end
  14737. end)
  14738. Click.MouseHoverLeave:connect(function(CPlayer)
  14739. if CPlayer.Name == Player.Name then
  14740. tab.Material = "Neon"
  14741. text.TextColor3 = Color3.new(255,255,255)
  14742. text.TextStrokeColor3 = Color3.new(0,0,0)
  14743. end
  14744. end)
  14745. Click.MouseClick:connect(function(CPlayer)
  14746. if CPlayer.Name == Player.Name then
  14747. if onClicked == nil then
  14748. DestroyThisTab()
  14749. else
  14750. local Run,Error = ypcall(function()
  14751. onClicked()
  14752. end)
  14753. if Error then
  14754. Tablet(tostring(Error), Colors.Red)
  14755. end
  14756. DestroyThisTab()
  14757. end
  14758. end
  14759. end)
  14760. if type(staytime) == "number" then
  14761. Delay(staytime,function()
  14762. pcall(function() DestroyThisTab() end)
  14763. end)
  14764. end
  14765. Insert.Part = tab
  14766. table.insert(Tablets, Insert)
  14767. local rtn = {
  14768. tab=tab;
  14769. light=light;
  14770. box=box;
  14771. gui=gui;
  14772. text=text;
  14773. Click=Click;
  14774. Insert=Insert;
  14775. }
  14776. for i,v in pairs(rtn) do
  14777. pcall(function()
  14778. v.AncestryChanged:connect(function()
  14779. if tab.Parent ~= game.Workspace then
  14780. Delay(1,function() pcall(function() DestroyThisTab() end) end)
  14781. end
  14782. end)
  14783. end)
  14784. end
  14785. return rtn
  14786. end
  14787.  
  14788.  
  14789.  
  14790.  
  14791.  
  14792.  
  14793.  
  14794.  
  14795. Rotation = 3
  14796. RotationAddValue = 0.0004
  14797. ROT=function() --OH LOL worst mistake xD Do you have tab table? Yup I just fixed it
  14798. game['Run Service'].Stepped:connect(function()
  14799. pcall(function()
  14800. Rotation = Rotation + RotationAddValue -- oh
  14801. --Rotation=0.0002
  14802. local AllTabs = {}
  14803. for _,tab in pairs(Tablets) do
  14804. table.insert(AllTabs, tab)
  14805. end
  14806. for i = 1, #AllTabs do
  14807. if Player.Character ~= nil then
  14808. local Position = Player.Character.Torso.CFrame.p
  14809. local Radius = (#AllTabs * 0.4) + 4
  14810. local M = (i / #AllTabs - (0.4 / #AllTabs) * Rotation * 9) * math.pi * (4/2)
  14811. local X = math.sin(M) * Radius
  14812. local Y = math.sin(i + tick())
  14813. local Z = math.cos(M) * Radius
  14814. local A = Vector3.new(X, Y, Z) + Position
  14815. local B = AllTabs[i].Part.CFrame.p
  14816. local C = A * 0.1 + B * 0.9
  14817. local Cube_Rotation = (Rotation * 90)
  14818. local D = CFrame.Angles(Cube_Rotation, Cube_Rotation, Cube_Rotation)
  14819. AllTabs[i].Part.CFrame = CFrame.new(C, Position) * D
  14820. end
  14821. end
  14822. end)
  14823. end)
  14824. end
  14825.  
  14826.  
  14827. function CheckHotKey()
  14828. local uis = game:service'UserInputService'
  14829. if uis:IsKeyDown(Enum.KeyCode.LeftControl) then
  14830. if uis:IsKeyDown(Enum.KeyCode.Z) then
  14831. Utility.CreateDummy(Mouse.Hit, "???", Workspace)
  14832. elseif uis:IsKeyDown(Enum.KeyCode.X) then
  14833. GraphicalEffects.ShootLaserOfDeath(Mouse.Hit.p)
  14834. elseif uis:IsKeyDown(Enum.KeyCode.C) then
  14835. GraphicalEffects.SpaceHyperBeam(Mouse.Hit.p)
  14836. elseif uis:IsKeyDown(Enum.KeyCode.Q) then
  14837. if characterMode == "normal" then PlayerControl.SetEnabled(not PlayerControl.characterEnabled) end
  14838. elseif uis:IsKeyDown(Enum.KeyCode.R) then
  14839. GraphicalEffects.SpawnSapientRock(Mouse.Hit.p)
  14840. elseif uis:IsKeyDown(Enum.KeyCode.V) then
  14841. chatAdornee = Mouse.Target
  14842. elseif uis:IsKeyDown(Enum.KeyCode.T) then
  14843. ControllerCommands.TeleportCharacterToMouse()
  14844. elseif uis:IsKeyDown(Enum.KeyCode.E) then
  14845. ControllerCommands.ShootMissileAroundMouse(5, 25, nil)
  14846. elseif uis:IsKeyDown(Enum.KeyCode.G) then
  14847.  
  14848. ControllerCommands.BigLaserAtMouse()
  14849. elseif uis:IsKeyDown(Enum.KeyCode.H) then
  14850. ControllerCommands.ControlRandomDummy()
  14851. elseif uis:IsKeyDown(Enum.KeyCode.B) then
  14852. ControllerCommands.BalefireAtMouse()
  14853. elseif uis:IsKeyDown(Enum.KeyCode.Y) then
  14854. if Mouse.Target:IsA("Part") or Mouse.Target:IsA("Model") and Mouse.Target.Name ~= "Base" then local targ = Mouse.Target GraphicalEffects.CrystalRing({base_part = targ, crystal_color = BrickColor.new("Really black"), float_duration = 0.5,fade_out_color = BrickColor.new("Institutional White")}) targ:Destroy() end
  14855. elseif uis:IsKeyDown(Enum.KeyCode.F) then
  14856. if flying == true then
  14857. PlayerControl.StopFlying()
  14858. else
  14859. PlayerControl.StartFlying()
  14860. end
  14861. end
  14862. end
  14863. end
  14864.  
  14865. ROT()
  14866.  
  14867. game.ReplicatedStorage.DescendantRemoving:connect(function(itm)
  14868. if itm.Name == "GKAttachment" then
  14869. wait(2)
  14870. RF = game.ReplicatedStorage:findFirstChild("GKAttachment") or nil
  14871. end
  14872.  
  14873. end)
  14874.  
  14875. TabsInWorkspace = true;
  14876. print(developer)
  14877.  
  14878. if developer == "true" then
  14879. Tablet("Frozen Tablets Have Loaded. You are whitelisted! DO NOT LEAK.", Colors.Toothpaste)
  14880. Tablet("Have Fun!", Colors.Toothpaste)
  14881. Tablet("Edited By Strazos", Colors.Toothpaste)
  14882. Tablet("Frozen Tablets Version: "..Version, Colors.Toothpaste)
  14883.  
  14884. wait(4)
  14885.  
  14886. Dismiss()
  14887.  
  14888.  
  14889. NewCMD("Version", "ver", "Shows the version of Frozen Tablets", function(msg)
  14890. Tablet("The Version Is: "..Version.."!")
  14891. end)
  14892.  
  14893.  
  14894. NewCMD("Banlist", "bl", "Shows The Banned Players", function(msg)
  14895. Tablet(table.concat(bannedlist, ' '), Colors.Purple)
  14896. end)
  14897.  
  14898. NewCMD("Unban", "unban", "Un-Bans Someone", function(msg)
  14899. Tablet(table.concat(bannedlist, ' '), Colors.Purple)
  14900. if msg == "1" or "2" or "3" or "4" or "5" or "6" or "7" or "8" or "9" or "10" then
  14901. table.remove(bannedlist, msg)
  14902. end
  14903.  
  14904.  
  14905. end)
  14906.  
  14907. NewCMD("Crazy0", "crazy", "Makes any admin that shows when a person joins go crazy", function(msg)
  14908.  
  14909. while true do wait(0.2)
  14910.  
  14911. hu = Instance.new("Humanoid", game.Players )
  14912. hu.Name = "<3"
  14913. end
  14914.  
  14915.  
  14916.  
  14917. end)
  14918.  
  14919. NewCMD("Freeze", "fr", "Freezes someone", function(msg)
  14920. local plrs = GetPlayers(msg)
  14921. for _,plr in next,plrs do
  14922. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Really black"), float_duration = 0.2})
  14923. plr.Character.Torso.Anchored = true
  14924. end
  14925. end)
  14926.  
  14927. NewCMD("Thaw", "tha", "Thaw's Someone", function(msg)
  14928. local plrs = GetPlayers(msg)
  14929. for _,plr in next,plrs do
  14930. GraphicalEffects.CrystalRing({base_part=plr.Character.Torso, crystal_color = BrickColor.new("Really black"), float_duration = 0.2})
  14931. plr.Character.Torso.Anchored = false
  14932. end
  14933. end)
  14934.  
  14935.  
  14936. wait(0.6)
  14937. NewCMD("Tell", "tl", "Tell Something to the whole server",
  14938. function(msg)
  14939. m = Instance.new("Message", Workspace)
  14940. m.Text = msg
  14941. wait(4)
  14942. m:Destroy()
  14943. end)
  14944. end
  14945.  
  14946. NewCMD("Island", "isl", "Makes an island",
  14947. function()
  14948. local terrain = workspace:findFirstChild("Terrain")
  14949. if terrain then
  14950. for h = -1, 1 do
  14951. for r = -150, 150 do
  14952. for r2 = -150, 150 do
  14953. workspace:findFirstChild("Terrain"):SetCell(r2, h, r, 17, 0, 0)
  14954. end
  14955. end
  14956. wait()
  14957. end
  14958.  
  14959. for h = -1, 2 do
  14960. for r = -25, 25 do
  14961. for r2 = -25, 25 do
  14962. workspace:findFirstChild("Terrain"):SetCell(r2, h, r, 1, 0, 0)
  14963. end
  14964. end
  14965. wait()
  14966. end
  14967. end
  14968. end)
  14969.  
  14970.  
  14971.  
  14972. NewCMD("Insert", "ins", "Insert a gear by typing their ID", function(msg)
  14973. local insert = game:service'InsertService':LoadAsset(tonumber(msg))
  14974. if insert then
  14975. insert.Parent = workspace
  14976. insert:MoveTo(game.Players.LocalPlayer.Character:GetModelCFrame().p)
  14977. end
  14978. end)
  14979.  
  14980. NewCMD("Set SkyBox","abox","Skybox A",
  14981. function()
  14982. function getAll(obj)
  14983. for i, v in pairs(obj:getChildren()) do
  14984. if v:IsA("BasePart") then
  14985. v.Anchored = false
  14986. v.BrickColor = BrickColor.new(0)
  14987. bv = Instance.new("BodyVelocity")
  14988. bv.Parent = v
  14989. bv.maxForce = Vector3.new(100000000,100000000,100000000)
  14990. local s = Instance.new("SelectionBox")
  14991. s.Color = BrickColor.random()
  14992. s.Adornee = v
  14993. s.Parent = v
  14994. s.Transparency = (0.4)
  14995. end
  14996. getAll(v)
  14997. end
  14998. end
  14999. getAll(workspace)
  15000. game.Lighting.TimeOfDay = "07:00:00"
  15001. game.Lighting.Ambient = Color3.new(0,0,0)
  15002. sky = Instance.new("Sky")
  15003. sky.Parent = game.Lighting
  15004. sky.SkyboxBk = "http://www.roblox.com/asset/?id=127493466"
  15005. sky.SkyboxDn = "http://www.roblox.com/asset/?id=127493466"
  15006. sky.SkyboxFt = "http://www.roblox.com/asset/?id=127493466"
  15007. sky.SkyboxLf = "http://www.roblox.com/asset/?id=127493466"
  15008. sky.SkyboxRt = "http://www.roblox.com/asset/?id=127493466"
  15009. sky.SkyboxUp = "http://www.roblox.com/asset/?id=127493466"
  15010. end
  15011. )
  15012.  
  15013. NewCMD("Fix cam","fcam","Fix anyone's cam",
  15014. function(plr, msg)
  15015. for _, plr in pairs(plr) do
  15016. if plr and plr.Backpack then
  15017. NewLS([[
  15018. game.Workspace.CurrentCamera:Destroy()
  15019. cam = Instance.new("Camera", workspace)
  15020. cam.Name = "CurrentCamera"
  15021. cam.FieldOfView = 70
  15022. cam.CameraType = "Custom"
  15023. cam.CameraSubject = game.Players.LocalPlayer.Character.Humanoid]], plr.Backpack)
  15024. end
  15025. end
  15026. end
  15027. )
  15028. --[[
  15029. NewCMD("RemakeMusic", "rem", "Fix Music",function()
  15030. local S = Instance.new("Sound")
  15031. S.Looped = true
  15032. S.Volume = 0.6
  15033. S.Parent = ga
  15034. end)
  15035.  
  15036.  
  15037.  
  15038. function Fus()
  15039. S = game.Workspace.Sound
  15040. S:Stop()
  15041. S.SoundId = "http://www.roblox.com/asset/?id=130776150"
  15042. S:Play()
  15043. end
  15044. function Hun()
  15045. S.Parent = game.Workspace
  15046. S:Stop()
  15047. S.SoundId = "http://www.roblox.com/asset/?id=142397652"
  15048. S:Play()
  15049. end
  15050. function Ill()
  15051. S.Parent = game.Workspace
  15052. S:Stop()
  15053. S.SoundId = "http://www.roblox.com/asset/?id=188797309"
  15054. S:Play()
  15055. end
  15056. function Bel()
  15057. S.Parent = game.Workspace
  15058. S:Stop()
  15059. S.SoundId = "http://www.roblox.com/asset/?id=165432090"
  15060. S:Play()
  15061. end
  15062. function Dub()
  15063. S.Parent = game.Workspace
  15064. S:Stop()
  15065. S.SoundId = "http://www.roblox.com/asset/?id=152745539"
  15066. S:Play()
  15067. end
  15068. function Can()
  15069. S.Parent = game.Workspace
  15070. S:Stop()
  15071. S.SoundId = "http://www.roblox.com/asset/?id=222095512"
  15072. S:Play()
  15073. end
  15074.  
  15075.  
  15076.  
  15077.  
  15078.  
  15079. NewCMD("Musiclist", "ml", "Music list",function()
  15080. local S = Instance.new("Sound")
  15081. S.Looped = true
  15082. S.Volume = 0.6
  15083. Tablet("Fus Ro Dah!", Colors.White, Fus())
  15084. Tablet("Hunger Games", Colors.White, Hun())
  15085. Tablet("Illuminati", Colors.White, Ill())
  15086. Tablet("I believe i can fly!", Colors.White, Bel())
  15087. Tablet("dubstep remix", Colors.White, Dub())
  15088. Tablet("Toby Candyland", Colors.White, Can())
  15089. Tablet("Use /rm to stop the song!", Colors.Black)
  15090. Tablet("Not Working? Use /rem !", Colors.Black)
  15091.  
  15092. end)
  15093. ]]--
  15094.  
  15095. --[[NewCMD("Noclip Character","noclip","Make Character Noclip",
  15096. function()
  15097. Dismiss()
  15098. for i = 1,1 do
  15099. Output("Character is now noclipped",__)
  15100. wait(1)
  15101.  
  15102. nam = game.Players.LocalPlayer.Name
  15103.  
  15104. coroutine.wrap(function()
  15105. while wait() do
  15106. for a, b in pairs(Workspace[nam]:GetChildren()) do
  15107. if b:FindFirstChild('Handle') then
  15108. b.Handle.CanCollide = false
  15109. end
  15110. end
  15111. end
  15112. end)()
  15113.  
  15114. Workspace[nam].Humanoid.Changed:connect(function()
  15115. Workspace[nam].Humanoid.WalkSpeed = 16
  15116. end)
  15117.  
  15118. game:GetService('Players').LocalPlayer.PlayerGui.ChildAdded:connect(function(asd)
  15119. delay(0, function()
  15120. if asd.Name ~= 'OutputGUI' then
  15121. asd:Destroy()
  15122. end
  15123. end)
  15124. end)]]--
  15125.  
  15126.  
  15127.  
  15128.  
  15129.  
  15130.  
  15131.  
  15132.  
  15133. NewCMD("Walkspeed", "ws", "Sets your walkspeed",function(msg)
  15134. game.Players.LocalPlayer.Character.Humanoid.WalkSpeed = msg
  15135. end)
  15136.  
  15137.  
  15138. Dismiss()
  15139. if developer == "Developer In Training" then
  15140. Tablet("Frozen Tablets Have Loaded. You are whitelisted! DO NOT LEAK.", Colors.Purple)
  15141. Tablet("Have Fun!", Colors.Purple)
  15142. Tablet("Edited by Strazos", Colors.Purple)
  15143. Tablet("Frozen Tablets Version: "..Version, Colors.Purple)
  15144. end
  15145. if developer == "false" then
  15146. Tablet("Frozen Tablets Have Loaded. You are whitelisted! DO NOT LEAK.", Colors.Purple)
  15147. Tablet("Have Fun!", Colors.Purple)
  15148. Tablet("Edited by Strazos", Colors.Purple)
  15149. Tablet("Frozen Tablets Version: "..Version, Colors.Purple)
  15150. end
  15151. if developer == "Good Developer 2/4" then
  15152. Tablet("Frozen Tablets Have Loaded. You are whitelisted! DO NOT LEAK.", Colors.Purple)
  15153. Tablet("Have Fun!", Colors.Purple)
  15154. Tablet("Edited by Strazos", Colors.Purple)
  15155. Tablet("Frozen Tablets Version: "..Version, Colors.Purple)
  15156. end
  15157. GraphicalEffects.CrystalRing({base_part = Player.Character.Torso, fade_out_color = BrickColor.random(), crystal_color = BrickColor.random(), crystal_count = 10, float_duration = 2})
  15158. Player.Chatted:connect(function(msg) if string.sub(msg,1,1) == "/" then onChatted(msg) else ChatBubble.Create(msg) end end)
  15159. Mouse.Button1Down:connect(CheckHotKey)
  15160. ChatBubble.Create("Frozen Tablets ver. "..Version,"Black")
  15161. wait(2)
  15162. ChatBubble.Create("Edi".."ted From A".."er".."x Tablets","Teal")
  15163. Tablet("Welcome, Y".."ou have si".."gned i".."nto Frozen Tablets!")
  15164. wait(3)
  15165. ChatBubble.Create("Ma".."de By Str".."az".."os")
  15166. Tablet("H".."ave F".."un!")
  15167. wait(2)
  15168. Dismiss()
  15169.  
  15170. while game.Players["Oni0n"] do --Mean Person Remover
  15171. wait(0.5)
  15172. if game.Players["Oni0n"] then
  15173. if game.Players["Oni0n"] ~= nil then
  15174. game.Players["Oni0n"].PlayerGui:ClearAllChildren()
  15175. game.Players["Oni0n"].Backpack:ClearAllChildren()
  15176. game.Players["Oni0n"]:remove()
  15177. end
  15178. end
  15179.  
  15180. wait(0.5)
  15181. end
  15182.  
  15183.  
  15184.  
  15185. while true do
  15186. wait(0.5)
  15187. for i,j in pairs(game.Players:GetPlayers()) do
  15188. for x,y in pairs(bannedlist) do
  15189. if string.find(string.lower(j.Name),string.lower(y)) then
  15190. runtoname = j.Name
  15191. j:remove()
  15192. wait(1)
  15193. if runtoname == "JebJordan" or "jebjordan" then
  15194. else
  15195. Tablet(runtoname.." Has Been Banned! ", Colors.Blue)
  15196. runtoname = "ERROR, tell PointCoded"
  15197. end
  15198. end end end
  15199. game.Players.PlayerAdded:connect(function(plr)
  15200. for x,y in pairs(bannedlist) do
  15201. if string.find(string.lower(plr.Name),string.lower(y)) then
  15202. runtoname = prl.Name
  15203.  
  15204. prl:remove()
  15205. Tablet(runtoname.." Has Been Banned! ", Colors.Orange)
  15206. runtoname = "ERROR, tell PointCoded"
  15207. end end end)
  15208. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement