Date: 2016/02/27 07:54:18 UTC-08:00
Type: Denizen Script
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
CoinFlip:
type: command
name: Coinflip
usage: /coinflip [player] [amount]
description: Flip a coin and bet your money on the outcome!
tab complete:
- determine <server.list_players.parse[name].filter[starts_with[<context.args.last||>]]>
script:
- define CoinFlipPlayer <player.name>
- define CoinFlipEnemy <context.args.get[1]>
- define CoinFlipMoney <context.args.get[2]>
- flag p@<def[CoinFlipEnemy]> CoinFlipMoney:<context.args.get[2]>
- if <player.money> < <def[CoinFlipMoney]> || <def[CoinFlipEnemy].money> < <def[CoinFlipMoney]> {
- narrate "<&c>You or the targetted player do not have enough money to coin flip!"
- queue clear
}
- take money qty:<def[CoinFlipMoney]>
- narrate "<&6>Sent Coinflip request to <&f><def[CoinFlipEnemy]> <&6>for $<def[CoinFlipMoney]>!"
- narrate "<&a>They have 15 seconds to accept the coin flip by doing /coinflip accept"
- narrate "<&6>Player <player.name> wants to flip-a-coin with you for $<def[CoinFlipMoney]>" targets:p@<def[CoinFlipEnemy]>
- narrate "<&7>Type /coinflip accept to accept the coinflip!" targets:p@<def[CoinFlipEnemy]>
- flag p@<def[CoinFlipEnemy]> CoinFlip:<player.name> duration:15s
- flag <player> CoinFlip:<def[CoinFlipEnemy]> duration:15s
CoinFlipAccept:
type: command
name: CoinflipAccept
usage: /coinflipaccept
description: Accept the coin flip request
script:
- if <player.has_flag[CoinFlip]> {
- flag p@<def[CoinFlipEnemy]> CoinFlip:<player.name> duration:15s
- flag p@<player.flag[CoinFlip]> CoinFlip duration:15s
- take money qty:<player.flag[CoinFlipMoney]>
- narrate "<&6>Coin flip accepted! Flipping the coin in..."
- narrate "<&6>Coin flip accepted! Flipping the coin in..." targets:p@<player.flag[CoinFlip]>
- wait 1s
- narrate "<&7>3..."
- narrate "<&7>3..." targets:p@<player.flag[CoinFlip]>
- wait 1s
- narrate "<&7>2..."
- narrate "<&7>2..." targets:p@<player.flag[CoinFlip]>
- wait 1s
- narrate "<&7>1..."
- narrate "<&7>1..." targets:p@<player.flag[CoinFlip]>
- wait 1s
- inject CoinFlipWinner
- queue clear
}
- narrate "<&7>You have no pending coin flip requests!"
CoinFlipWinner:
type: task
script:
- define CoinFlipNumber <util.random.int[1].to[2]>
- if <def[CoinFlipNumber]> == 1 {
- give <player.flag[CoinFlip]> money qty:<player.flag[CoinFlipMoney].mul[2]>
- narrate "<&a>You won a coin flip against p@<player.flag[CoinFlipEnemy]> and won $<player.flag[CoinFlipMoney].mul[2].as_money>" targets:<player.flag[CoinFlip]>
- queue clear
}
- if <def[CoinFlipNumber]> == 2 {
- give <player.flag[CoinFlipEnemy]> money qty:<player.flag[CoinFlipMoney].mul[2]>
- narrate "<&a>You won a coin flip against p@<player.flag[CoinFlip]> and won $<player.flag[CoinFlipMoney].mul[2].as_money>" targets:<player.flag[CoinFlipEnemy]>
}