Date: 2025/04/28 07:54:47 UTC-07:00
Type: Diff Report
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
-rtd_gui_task:
- type: task
- debug: false
- speed: 0
- prefix: '&ss1&ss2&ss1&ss5&ss2&ss0&ss2&ss0&ss0&ss5&ss1&ss8&ss2&ss5&ss0&ss7&ss2&ss1&ss0&ss9&ssr'
- script:
- - define base_inv ''
- #- define base_inv 'in@generic[title=<&6><&l>Lottery GUI;size=27;contents=li@i@air]'
- - inventory open 'd:in@generic[title=<script.yaml_key[prefix].unescaped><&6><&l>Lottery GUI;size=27]'
- - wait 1t
- - repeat 50 {
- - define rng '<util.random.int[1].to[200]>'
- - if <def[rng]> < 30 {
- - define item 'i@iron_sword[display_name=&sseLottery Sword;lore=&ss6Whippity whoopity, you now have a sword!;enchantments=DURABILITY,2|DAMAGE_ALL,3]'
- }
- else if <def[rng]> < 40 {
+ - if <player.item_in_hand.flag[bondbreak].equals[true]>:
+ - determine cancelled passively
+ - stop if:<player.has_flag[vin_cd2]>
+ - flag <player> vin_cd2 expire:1s
+ - define radius 1
+ - define add 1
+ - define pointvalue 20
+ - define start <player.location.above[1]>
+ - define points <[start].points_around_y[radius=<[radius]>;points=<[pointvalue]>]>
+ - foreach <[points]> as:point:
+ - playeffect effect:dust_color_transition at:<[point]> special_data:1|<&color[#ffa6f9]>|<&color[#cce2ff]> quantity:1 offset:0 visibility:100
+ - define victim <[start].points_around_y[radius=<[radius]>;points=<[pointvalue].find_entities.within[1]>]>
+ - hurt <[victim]>
+ - define add:+:0.1
+ - define radius:+:<[add]>
+ - define pointvalue:+:20
- - define item 'i@largetoken'
- }
- else if <def[rng]> < 60 {
- - define item 'i@diamond_chestplate[display_name=&ssaLottery Chestplate;nbt_attributes=generic.armor/chest/0/1]'
- }
- else if <def[rng]> < 85 {
- - define item 'i@lootpot'
- }
- else if <def[rng]> < 110 {
- - define item 'i@FartPotion'
- }
- else if <def[rng]> < 140 {
- - define item 'i@lifegem'
- }
- else if <def[rng]> < 145 {
- - define item 'i@relic'
- }
- else if <def[rng]> < 165 {
- - define item 'i@smalltoken'
- }
- else if <def[rng]> < 175 {
- - define item 'i@mediumtoken'
- }
- else if <def[rng]> < 190 {
- - define item 'i@dirt[display_name=<&6>Dertt :c]'
- }
- # 15% chance
- else {
- - define item 'i@LuckyTag'
- }
- - if <def[item]> != <def[prev_item]||i@air> {
- - inventory open
- 'd:in@generic[title=<script.yaml_key[prefix].unescaped><&6><&l>Lottery GUI;size=27;contents=li@i@air|i@air|i@air|i@air|i@air|i@air|i@air|i@air|i@air|i@air|i@air|i@air|i@air|<def[item]>]'
- }
- - define prev_item '<def[item]>'
- - wait <[email protected][<def[value].mul[0.125].sub[3]>].round_up>t
- }
- - wait 1s
- - narrate "<&6>[<&b>Lottery<&6>] <&e>Congratulations! You got <def[item].display_name>!"
- - give <def[item]>
- - flag player can_close_inv
- - inventory close
-
-rtd_gui_evts:
- type: world
- debug: false
- events:
- on player closes inventory:
- - if <context.inventory.title.escaped.starts_with[&ss1&ss2&ss1&ss5&ss2&ss0&ss2&ss0&ss0&ss5&ss1&ss8&ss2&ss5&ss0&ss7&ss2&ss1&ss0&ss9&ssr]> {
- - if !<player.has_flag[can_close_inv]> {
- - determine cancelled
- }
- - flag player can_close_inv:!
- }