The heart is mad, explosion is art!HBM's nuclear technology!IntersectionIntersectionEffective ZS script (ContentTwe

This tutorial is set by the author to use the CC By-NC-SA protocol.

HBM's nuclear technology has a B93 energy pistol.You can launch without any ammunition.After being shot by this pistol, waiting for a while (being given!!!!!!

In the NTM/HBM nuclear technology EX remake, it is basically inherited, but in the EX remake version, the gun does not control the control force and the range is extremely short, and it will cause a bullet to cause the big bang:

The charging once (normal shooting) causes a small -scale explosion, which causes a small -scale SA explosion twice. Three times cause a large -scale anti -SA326 explosion, four times of magical point, five times of controlling anti -strong dedication, six times cause small SparkStrange points, seven times cause big spark strange points, eight times of black holes, nine times caused a large -scale nuclear explosion, ten times will cause the gun to destroy and cause a large range of SA explosion

I can't see the effect of the biological explosion (just say that it is not fried).And found in Jei!IntersectionIntersectionSplashing and retention potion, the throwing distance is extremely close, and is often resistant to high resistance.

So I want to use the CRT/COT magic reform.

Find the idea from the following two tutorials:

[1.12.2] Simple NBT manipulation and item dynamic information display (basically end)

Nympho

Below, use an example to explain the usage of the associated array: I hope to add a special mechanism to the diamond sword: when attacking the enemy, the hunger of the opponent is 10s, the poisoning of 15s and the withering of 5s (both level I).The incident itself is relatively simple. It can be written by using enumeration without using the associated array:

 Import Crafttweaker.event.entitylivingHurtevent;

Import crafttweaker.damage.idamageSource;

import crafttweaker.entity.ientitylivingbase;

import crafttweaker.player.iplayer;

events.onentitylivingHurt (Function (event as EntitylivingHurtevent) {{

If (event.entitylivingbase.world.remote) Return;

Var dmgsrc as IDAMAGESOURCE = EVENT.DAMAGESOURCE;

Var entity as IENTITYLIVINGBASE = Event.entitylivingBase;

If (if (if (if

! Isnull (DMGSRC) &&

! Isnull (DMGSRC.DAMAGETYPE) &&

! (DMGSRC.Projectile) &&

! Isnull (dmgsrc.gettrueSource ()) && &&

(DMGSRC.GettruSource () Instanceof iPlayer)

) {{

Var Player as iPlayer = dmgsrc.gettrueSource (); if (! Isnull (Player.CurrenTitem) && . Currenti TEM)) {{

Entity.addpotionEffect ( .makePotionEffect (200,0));

Entity.addpotionEffect ( .makePotionEffect (300,0));;);

Entity.addpotionEffect ( .makePotionEffect (100,0));;);

}

}

});

Nympho

[1.12.2] Re: Journal of craftsmanship entries from scratch!Take you with your hand to customize your own craftsman's entry![Update update of indefinitely]:

Nympho

Enter two diagonal vertices (POSITON3F class), and obtain all the entity forms (IENTITY []) within the range from the target dimension. It should be noted that the array of an IENTITY class is obtained here and not a specific object.We cannot operate directly for arrays, but we can choose to use the "one by one" operation to operate the object.

Let's solve the problem one by one, the first is the "Position3F" parameter of the "Position3F" of the target area cubic. For this, we can get the location information of the target entity ([4.1]).Method (link, pay attention to the interface of the IENTITY class), but pay attention!Although I wrote this Zengetter/Method in Wiki, the actual writing will be directly written to the error array to cross the border: (don't ask me how I know)

Nympho

#loader contenttweaker

#Modloaded tconstruct

Import Mods.ContentTWEAKER.TCONSTRUCT.TRAITBUILDER;

import crafttweaker.player.iplayer;

import crafttweaker.entity.ientitylivingbase;

var everburnImber = TrartBuilder.create ("Ever_burning_amber");

EverburnImber.color = 0xcb4b16;

EverburningAmber.localizedName = "" Black -burning Amber ""; EverburningAmber.localizeDescription = "" Lie! "

When the player attacks, there is a probability that an additional 5*5*5 5*5 is an additional 2.0 -point fixing damage and ignites all entities. This effect will increase the damage by 50%, and the player's 2.0 point of life will be treated.";

EverburningAmber.calcdamage = Function (Trart, Tool, Attacker, Target, OriginalDamage, CurrenTDAMAGE, Iscribeical) {

Var dmg as float = Currentdamage; // Define the current damage value of a DMG variable storage

Iftacker.World.remote) Return dmg; // Event code specification does not explain

Iftacker Instanceof iPlayer) {// Instanceof determination conversion. Note that the keywords of the iPlayer class are used here, you need a guide package!

Var Player as iPlayer = Attacker; // Use a variable called Player to store player information

If (Player.World.random.nextDouble () <0.1F) {// Random number detector, set the probability of 10%

// Get the target rectangle range

Var XT = Target.getx () as double;

Var yt = target.gety () as double;

Var zt = target.getz () as dough;

var areatart = crafttweaker.util.position3f.create ((XT+2.0D), (yt+2.0d), (zt+2.0d)); VAR AREAND = CRAFTTWEAKER.UTI L.POSITION3F.CREATE (XT-2.0D)(YT-2.0d), (ZT-2.0D));

For Entity in target.World.GetentITIESIAREA (Areastart, AREAEND) {{

If (entity instanceof, it) {// Remember the guidance package!IntersectionIntersection

Var entitylivingBase as IntitylivingBase = Entity;

// iplayer class judgment

If (entitylivingbase instanceof iPlayer) {// Remember the guidance package!IntersectionIntersection

Var AreaPlayer as iPlayer = EntitylivingBase; if (area.uuid! = Player.uid) {// Player UUID determination, non -attacker executes

AreaPlayer.health- = 2.0F; // Fixed damage 2.0 points

Areaplayer.setFire (5); // Fire 5s

}

}

Else {// Non -iPlayer class execution

EntitylivingBase.health- = 2.0F; // Fixed damage 2.0 points

EntitylivingBase.Setfire (5); // Fire 5s}

}

}

Player.health+= 2.0F;

Dmg*= 1.5F;

}

}

Return dmg; // Remember to return the modified damage value

};

EverburnImber.register ();

After grafting and merging magic to check wiki, the final modified script is as follows:

Import crafttweaker.World.iworld;

Import crafttweaker.event.ientityEvent;

Import crafttweaker.event.entitylivingHurtevent;

Import crafttweaker.damage.idamageSource;

import crafttweaker.entity.ientitylivingbase;

import crafttweaker.player.iplayer;

Import Crafttweaker.events.ieventmanager;

import crafttweaker.event.commandevent;

Import crafttweaker.command.icommand;

import crafttweaker.event.playerrickkitemevent;

Events.onPlayerrightClickitem (Function (event as crafttweaker.event.playerrightClickitemevent) {var Player as iPlayer = Event.player;

If (! Isnull (Player.CurrenTitem) && .matches (player.currentity)) {

// Get the target rectangle range

Var XT = Player.getx () as double;

Var yt = player.gety () as double;

Var zt = player.getz () as dough;

Var areatart = crafttweaker.util.position3f.create ((XT+32.0D), (yt+32.0d), (zt+32.0d));

Var areand = crafttweaker.util.position3f.create ((XT-32.0D), (yt-32.0d), (zt-32.0d));

For Entity in Player.WORLD.GEENTITESINAREA (AREASTAND) {if (Entity Instanceof IentitylivingBase) {// Remember the guidance package!IntersectionIntersection

Var entitylivingBase as IntitylivingBase = Entity;

EntitylivingBase.addpotionEffect ( .makePotionEffect (60,0));

EntitylivingBase.setFire (5); // Fire 5s

}

}

}

});

Need [COT] ContentTweaker and [CRT] CRAFTTWEAR and B.A.S.E

The effect is that you only need to right -click the B93 energy pistol in the item bar, regardless of whether the right target is not shot, you as the original point of 32 grids, 32 grids, 32 grids.If you want to divide the enemy, I will ask me to enlighten me.) It will be ignited for 5 seconds, and then there will be!IntersectionIntersectionAfter the effect is over.The effect is very shocking when it is used in blood, and explosion is art!