Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /me
- [h:setProperty("None", 0)]
- [h:input(
- "var|"+DefensiveReminder+"|Reminder|LABEL",
- "damage|0|Amount of damage or healing done",
- "reduce|DEF,SPDEF,None|Defense Type|RADIO|VALUE=STRING",
- "type|x0.25,x0.5,x0.75,x1,x1.25,x2,x3|Type Resistance or Weakness|LIST|SELECT=3"
- )]
- [h,switch(type):
- case 0: eff = 0.25;
- case 1: eff = 0.5;
- case 2: eff = 0.75;
- case 4: eff = 1.25;
- case 5: eff = 2;
- case 6: eff = 3;
- default: eff = 1
- ]
- [h,if(damage<0), CODE:
- {
- [h:HP = min(HP - damage,MaxHP)]
- [h,if(HP>0): setState("KO",0)]
- [h,if(HP==MaxHP): newline=add("<br>", token.name, " has been healed to full HP!"); newline=""]
- [h:message=add("has been healed for ", abs(damage), "HP!", newline)]
- };
- {
- [h,if(reduce != "None"):reduction = (getProperty(reduce) + DR); reduction = 0]
- [h,if(damage > 0):actualDamage = max(floor((damage-reduction)*eff), 1); actualDamage = 0]
- [h:oldInjuries = Injuries]
- [h,if(actualDamage >= NormalMaxHP/2):Injuries = Injuries + 1]
- [h:oldHPCount = ceil(HP/NormalMaxHP*2)]
- [h:HP = (HP - actualDamage)]
- [h:HPCount = ceil(HP/NormalMaxHP*2)]
- [h:Injuries = Injuries - HPCount + oldHPCount]
- [h,if(HP<1): setState("KO",1)]
- [h:message=add("has been hit with ", actualDamage, " damage!")]
- [h:injuriesTaken=Injuries-oldInjuries]
- [h,if(injuriesTaken>0):message = add(message, "<br>", token.name, " has taken ", injuriesTaken, " injuries!")]
- [h,if(Injuries<10 && HP<=-2*NormalMaxHP && HP<=-50): message = add(message, "<br>", token.name, " might be dead...")]
- [h,if(Injuries>=10):message = add(message, "<br>", token.name, " has died from injuries...")]
- [h,if(Injuries>=10):setState("KO",0)]
- [h,if(Injuries>=10):setState("Dead",1)]
- }]
- [h,if(Injuries>=10):setBar("Health",0);setBar("Health",HP/MaxHP)]
- [r:message]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement