What's new
Resource icon

mmDenizenAddon 0.495a

# Updates in v0.495
##### added two new commands: mmapplymythic & mmremovemythic. To transform any living entity into a mythicmobs mob, or remove the mythic from the entity. Also possible for players but only if the mob config have Persistent set to true.
#### Example:
Code:
    on player right clicks entity:
        - if <context.entity.isactivemob> == false {
            - mmapplymythic entity:<context.entity> mobtype:MythicEntity level:1
            - announce "Applied mythic to entity"
        } else {
            - mmremovemythic activemob:<context.entity.activemob>
            - announce "Removed mythic from entity"
        }
       
mob yaml:

MythicEntity:
  Type: zombie
  Skills:
  - message{msg="Me a MythicMobs mob now!"} @world ~onTimer:60
  • Like
Reactions: PsychoLynx
Updates in v0.49a

- added dEntity.mmtargets[<String>]
- returns a dList of all targets for MythicMobs targeter <String> Use any MythicMobs targeter in MythicMobs syntax.

Example:
Code:
    on player right clicks:
     - announce <player.entity.mmtargets[@EIR{r=30}]>
     ## returns a dEntity dList
     - announce <player.entity.mmtargets[@Ring{r=10;p=5}]>
     ## returns a dLocation dList
  • Like
Reactions: Ugikie
Updates in v0.48a

Write your own RandomSpawner conditions.

new MythicMobs RandomSpawner condition:

- dspawncondition{c=denizenconditionname;args=arguments}
- Meanwhile RandomSpawnerConditions only work with Location. So you always have to check with <context.location>
- Use <context.type> to check if its an EntityCondition or a LocationCondition.

Example:
Code:
MythicMobs part:

RandomExampleSpawner:
  Mobname: SkeletonKing
  Worlds: world
  Chance: 1
  Priority: 1
  Action: replace
  Conditions:
  - dspawncondition{c=weather;args=sunny}
  - dspawncondition{c=time;args=day}
 
Denizen part:

    on mm denizen condition:
      - if <context.condition> == "time" {
        - if <context.type> == "e" {
          - if <context.args> != <context.entity.world.time.period> {
            - determine false
          }
        }
        if <context.type> == "l" {
          - if <context.args> != <context.location.world.time.period> {
            - determine false
          }
        }
      }
      - if <context.condition> == "weather" {
        - if <context.args> == "sunny" {
          - if <context.type> == "e" {
            - if <context.entity.world.has_storm> == true {
              - determine false
            }
          }
          - if <context.type> == "l" {
            - if <context.location.world.has_storm> == true {
              - determine false
            }
          }
        }
      }
Updates in v0.47a

Fixed ugly bug in all dClass extensions. Made dEntity, dWorld almost useless at all.

New command

- mmtrigger [activemob:dActiveMob] [trigger:string] [entity:dEntity]
- Trigger the <activemob> with trigger <string> and triggerenttiy <dEntity>
- Valid triggers are: DEFAULT, ATTACK, BOW_HIT, BLOCK, COMBAT, CROUCH, UNCROUCH, DAMAGED, DROPCOMBAT, DEATH, ENTERCOMBAT, EXPLODE, INTERACT, KILL, KILLPLAYER, PLAYERDEATH, SHOOT, SIGNAL, SPAWN, SPLASH_POTION, SWING, TARGETCHANGE, TELEPORT, TIMER, USE, READY

Example:
Code:
Denizen part:

    on entity damaged by projectile:
     - if <context.entity.isactivemob> == true && <context.projectile.name> == "arrow" {
       - mmtrigger activemob:<context.entity.activemob> trigger:bow_hit entity:<context.damager>
     }
    
MythicMobs part:

Monkey:
  Type: zombie
  Display: "MythicMobs Monkey"
  Health: 40
  Armor: 10
  Skills:
  - message{msg="Ouch! Stop shooting arrows at me!"} @trigger ~onBowHit 1
New in v0.46a

Attributes for dEntity

- entity.damage
- returns Element(double)
- Base damage (>1.9 only)

- entity.followrange
- returns Element(double)
- Base followrange (>1.9 only)

- entity.armor
- returns Element(double)
- Base armor (>1.9 only)

- entity.attackspeed
- returns Element(double)
- Base attackspeed (>1.9 only)

- entity.knockbackresist
- returns Element(double)
- Base knockback resistance (>1.9 only)

- entity.jumpstrength
- returns Element(double)
- Base jump strength if entity of horse type (>1.9 only)

- entity.maxnodamageticks
- returns Element(integer)
- Max amount of nodamageticks

- entity.nodamageticks
- returns Element(integer)
- Actual nodamageticks

Adjusts for dEntity

- adjust dEntity followrange:double
- set follow range

- adjust dEntity damage:double
- set base damage

- adjust dEntity armor:double
- set base armor (>1.9 only)

- adjust dEntity attackspeed:double
- set attack speed (>1.9 only)

- adjust dEntity knockbackresist:double
- set knockback resistance

Attributes for dActiveMob

- activemob.damage
- returns Element(double)
- max possible amount of damage the mob can make.

- activemob.power
- returns Element(float)
- Powerlevel of the mob

- activemob.lastdamageskillamount
- returns Element(double)
- Amount of damage from the last used damage skill.

- activemob.hasimmunitytable
- returns Element(boolean)
- Check if the mob has immunitytable enabled.

- activemob.isonimmunitycooldown[dEntity]
- returns Element(boolean)
- Check if the entity is on the mob's immunitytable.

Adjusts for dActiveMob

- adjust dActiveMob setimmunitycooldown:dEntity
- set the mobs immunitycooldown for the entity.
Scoreboard Teams Support:

Added better control of the Scoreboard Teams. Because its great to get MythicMobs into teams with players and stuff.

See the gitpage for full syntax.
@Rickyling: <activemob.stance> works now as expected
  • Like
Reactions: Rickyling
*** Update 0.42a 10.3.2017

Added advanced threattable support to activemob. Get the update from the git page!

To use as followed:

// @adjust <activemob.incthreat> <dEntity>|value
// add value as double to threat of dEntity of activemob

// @adjust <activemob.decthreat> <dEntity>|value
// remove value as double from threat of dEntity of activemob

// @adjust <activemob.clearthreat>
// clear the whole threattable of activemob

// @adjust <activemob.removethreat> <dEntity>
// remove dEntity from threattable of activemob

// @attribute <activemob.threattable>
// @returns dList<dEntity>

// get the threattable as dEntity dList of activemob

// @attribute <activemob.threatvalueof[<dEntity]>
// @returns Element(double)

// get the threatvalue as double from threattable dEntity of activemob


Example:
Code:
threattabletest:
  type: world
  events:
    on player right clicks at entity:
     - if <context.entity.isactivemob> == true {
       - if <context.entity.activemob.hasthreattable> == true {
         - foreach <context.entity.activemob.threattable> {
           - announce "<def[value].name> with value <context.entity.activemob.threatvalueof[<def[value]>]>"
            - adjust <context.entity.activemob> incthreat:<def[value]>|5
         }
        }
     }
Fixed to work with snapshots aswell.
  • Like
Reactions: Ugikie
Top