Bounty:
type: format
format: "<green>Bounty Officer<white>: <text>"
Bounty Kill Mobs:
type: world
debug: false
events:
on entity death:
- if <context.damager.entity_type||none> == PLAYER {
- define killer <context.damager>
- define type <context.entity.entity_type>
- define baby <context.entity.age.as_int.is[LESS].than[0]>
- define burning <context.entity.fire_time.in_seconds.is[!=].to[0]>
- if %type% == PIG {
- determine passively NO_XP
- if %baby% {
- determine NO_DROPS
} else if %burning% {
- determine li@i@grilled_pork
} else {
- determine li@i@pork
}
} else if %type% == CHICKEN {
- determine passively NO_XP
- if %baby% {
- determine NO_DROPS
+ - determine NO_DROPS
} else if %burning% {
- determine li@i@cooked_chicken
+ - determine li@i@cooked_chicken
} else if <util.random.int[1].to[10]> < 3 {
- determine li@i@raw_chicken|i@feather
+ - determine li@i@raw_chicken|i@feather
} else {
- determine li@i@raw_chicken
+ - determine li@i@raw_chicken
}
} else if %type% == SHEEP {
- determine passively NO_XP
- if %baby% {
- determine NO_DROPS
}
else if %burning% {
- determine li@i@cooked_mutton
}
else if <util.random.int[1].to[10]> < 6 {
- define colour <context.entity.color>
- if %colour% == silver define colour light_gray
- determine li@i@mutton|i@%colour%_wool
} else {
- determine li@i@mutton
}
} else if %type% == COW {
- determine passively NO_XP
- if %baby {
- determine NO_DROPS
} else if %burning% {
- determine li@i@cooked_beef
} else if <util.random.int[1].to[10]> < 4 {
- determine li@i@leather|i@raw_beef
} else {
- determine li@i@raw_beef
}
} else if %type% == HORSE {
- determine NO_DROPS_OR_XP
} else if %type% == RABBIT {
- determine passively NO_XP
- if %baby% {
- determine NO_DROPS
} else if %burning% {
- determine li@i@cooked_rabbit
} else if <util.random.int[1].to[10]> < 3 {
- determine li@i@rabbit|i@rabbit_foot
} else {
- determine li@i@rabbit
}
} else if %type% == MUSHROOM_COW {
- determine passively NO_DROPS_OR_XP
- define drops li@
- if <util.random.int[1].to[10]> < 3 {
- define drops <%drops%.include[i@leather]>
}
- if <util.random.int[1].to[100]> < 85 {
- define drops <%drops%.include[i@red_mushroom]>
- if <util.random.int[1].to[100]> < 5 {
- define drops <%drops%.include[i@raw_beef]>
}
- if <%drops%.size> != 0
- determine %drops%
}
} else if %type% == SQUID {
- determine passively NO_XP
- determine li@i@ink_sack
} else if <def[type].contains_any[wolf|ocelot|bat|villager]> {
#- narrate format:Bounty "You killed a <context.entity.entity_type.to_lowercase> and gained no xp!" targets:%killer%
- determine NO_DROPS_OR_XP
} else if %type% == SPIDER || %type% == CAVE_SPIDER {
- determine passively 5
- define drops li@
- if <util.random.int[1].to[100]> < 40 {
- define drops <%drops%.include[i@string]>
}
- if <util.random.int[1].to[100]> < 80 {
- define drops <%drops%.include[i@spider_eye]>
}
- if <%drops%.size> != 0 {
- determine %drops%
}
} else if %type% == SKELETON {
- determine passively 5
- define drops li@i@bone
- if <util.random.int[1].to[100]> < 5 {
- define drops <%drops%.include[i@bow[durability=<util.random.int[195].to[300]>]]>
}
- determine %drops%
} else if %type% == CREEPER {
- determine passively NO_DROPS
- determine passively 5
- if <util.random.int[1].to[100]> < 65 {
- determine li@i@sulphur
}
} else if %type% == ZOMBIE {
- determine passively 5
- determine li@i@rotten_flesh
} else if %type% == PIG_ZOMBIE {
- determine passively 7
- define drops li@i@rotten_flesh
- if <util.random.int[1].to[10]> < 2 {
- define drops <%drops%.include[i@gold_nugget]>
}
- determine %drops%
} else if %type% == ENDERMAN {
- determine passively NO_DROPS
- determine passively 8
- if <util.random.int[1].to[10]> < 4 {
- determine li@i@ender_pearl
}
} else if %type% == SILVERFISH {
- determine passively 5
- determine NO_DROPS
} else if %type% == WITCH {
- determine 5
- random {
- determine li@i@stick|i@stick
- determine li@i@stick|i@stick
- determine li@i@stick|i@stick
- determine li@i@sugar|i@sugar
- determine li@i@spider_eye|i@stick
}
}
#- announce "<aqua><%killer%.name> <white>killed a <yellow>%type%" to_console
} else {
- determine NO_DROPS_OR_XP
}
Bounty Command:
type: command
name: bounty
usage: /bounty [player] [amount]
description: Allows you to check and place bounty on a player.
allowed help:
- determine <player.has_flag[verified]||<context.server>>
tab complete:
- if <player.has_flag[verified]||<context.server>> determine <server.list_online_players.parse[name].filter[starts_with[<context.args.first>]]>
script:
- if <context.args.size> == 1 {
- define selPlayer <server.match_player[<context.args.get[1]>]||none>
- if %selPlayer% != none {
- narrate format:ServerChat "<%selPlayer%.name> has $<def[selPlayer].flag[bounty]||0> bounty on them."
}
}
-