Paste #38046: Diff note for paste #38045

Date: 2016/11/29 11:16:29 UTC-08:00
Type: Diff Report

View Raw Paste Download This Paste
Copy Link


 RideAllTheChickens:
   type: world
   debug: false
   events:
     on player right clicks chicken:
     - mount <player>|<context.entity> <context.entity.location>
     - adjust <context.entity> has_ai:false
     - if !<context.entity.flag[RideAllTheChickens.WasRidden]||false> {
       - flag server RideAllTheChickens.Ridden:++
       - flag <context.entity> RideAllTheChickens.WasRidden
       }
     - wait 1t
     - actionbar "Press LSHIFT for TURBO SPEEEED"
     on player steers chicken:
     - if <context.jump> {
       - flag player RideAllTheChickens.ShouldJump:true
       }
     - flag player RideAllTheChickens.JumpCooldown:--
     - flag player RideAllTheChickens.TickCooldown:--
     - if <player.flag[RideAllTheChickens.TickCooldown]||0> > 0 {
       - flag player RideAllTheChickens.Forward:+:<context.forward>
       - flag player RideAllTheChickens.Sideways:+:<context.sideways>
       - if <context.dismount> {
         - determine cancelled
         }
       - queue clear
       }
     - flag player RideAllTheChickens.TickCooldown:5
     - define dividing <tern[<context.entity.is_on_ground>]:8||64>
     - if <context.dismount> {
       - define dividing <def[dividing].div[10]>
       - determine passively cancelled
       }
     - define forward <context.forward.add[<player.flag[RideAllTheChickens.Forward]||0>].div[<def[dividing]>]>
     - define sideways <context.sideways.add[<player.flag[RideAllTheChickens.Sideways]||0>].div[<def[dividing]>]>
     - define looking <player.location.direction.vector.sub[0,<player.location.direction.vector.y>,0]>
     - define velocity <def[looking].mul[<def[forward]>].add[<def[looking].rotate_around_y[<el@90.to_radians>].mul[<def[sideways]>]>]>
     - flag player RideAllTheChickens.Forward:0
     - flag player RideAllTheChickens.Sideways:0
     - if <player.flag[RideAllTheChickens.ShouldJump]||false> {
       - if <context.entity.is_on_ground> && <player.flag[RideAllTheChickens.JumpCooldown]||0> <= 0 {
         - define velocity <def[velocity].add[0,0.5,0]>
         - flag player RideAllTheChickens.JumpCooldown:10
         }
       - flag player RideAllTheChickens.ShouldJump:false
       }
     - define length <def[velocity].vector_length>
     - if <def[length]> > 0.01 {
       - look <context.entity> <context.entity.location.add[<def[velocity]>]>
       - adjust <context.entity> velocity:<context.entity.velocity.add[<def[velocity]>]>
       - flag server RideAllTheChickens.TotalDistance:+:<def[length]>
       }
     on system time hourly:
     - webget "http://stats.denizenscript.com/tracker?script=111&version=2&chickens_ridden=<server.flag[RideAllTheChickens.Ridden].round||0>&total_distance=<server.flag[RideAllTheChickens.TotalDistance].round_down||0>"
     - flag server RideAllTheChickens.Ridden:0
     - flag server RideAllTheChickens.TotalDistance:0