Date: 2016/07/17 12:28:04 UTC-07: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
sp_development:
type: world
events:
on player closes inventory:
- choose "<context.inventory>":
- case "in@sell_inv":
#Player get sp_sell:true if he clicks on the sell item
#
- if <player.has_flag[sp_sell]> {
- narrate IF_RUNNING
- define price_list "0"
- define false_item "li@"
- define items_takeover "li@"
- define shopname "<player.flag[shopname]>"
- foreach <context.inventory.list_contents.exclude[i@air].remove[1|2|3|4|5|6|7|8|9]> {
- adjust <def[value]> "quantity:1" save:item
- define number <yaml[sp].read[shops.<def[shopname]>.list_table.items_uec].find[<entry[item].result>]>
- if <def[number]> > 0 {
- narrate "preis: <def[value].qty>x <yaml[sp].read[shops.<def[shopname]>.list_table.price_identifier].get[<def[number]>]>"
- define price_list "<def[price_list].add[<yaml[sp].read[shops.<def[shopname]>.list_table.price_identifier].get[<def[number]>].mul[<def[value].qty>]>]>"
- define items_takeover "<def[items_takeover].include[<def[value].escaped>]>"
}
else {
- narrate "Item nicht im Shop"
- if <proc[invspace]> > 0 {
- narrate 1
- give <def[value]> to:<player.inventory>
}
else {
- drop <def[value]> <player.location>
}
}
}
- narrate "Gesamtwert: <def[price_list]>"
- flag player sp_sell:!
- flag player "sp_takeover:!"
- flag player "sp_takeover:|:<def[items_takeover].unescape_contents>|<def[price_list]||0>"
- narrate "<player.flag[sp_takeover].get[1].to[<player.flag[sp_takeover].size.sub[1]>]>"
- inventory open d:in@sell_inv_money
}
#Else runs, if he just closes the inventory by item or E
#
else {
- narrate ELSE_RUNNING
- if <proc[invspace]> > <context.inventory.list_contents.exclude[i@air].remove[1|2|3|4|5|6|7|8|9].size> {
- foreach <context.inventory.list_contents.exclude[i@air].remove[1|2|3|4|5|6|7|8|9]> {
- give <def[value]> to:<player.inventory>
}
}
else {
- drop <context.inventory.list_contents.exclude[i@air].remove[1|2|3|4|5|6|7|8|9]> <player.location>
}
}