brunofacca /
zen-rails-base-app
Base application for Ruby on Rails 6 projects. Built to minimize the time spent writing boilerplate code and performing repetitive setup tasks.
Loading repository data…
objc-zen / repository
Zen and the Art of the Objective-C Craftsmanship
We started writing this book on November 2013. The initial goal was to provide guidelines to write the most clean Objective-C code possible: there are too many guidelines out there and all of them are debatable. We didn't aim introducing hard rules but, instead, a way for writing code to be more uniform as possible across different developers. With time the scope moved to explain how to design and architecture good code.
The idea underneath is that the code should not only compile, instead it should "validate". Good code has several characteristics: should be concise, self-explanatory, well organized, well documented, well named, well designed and stand the test of time. The main goals behind the curtain are that clarity always wins over performance and a rationale for a choice should always be provided. Some topics discussed here are general and independent from the language even if everything is tied up to Objective-C.
On June 6th, 2014 Apple announced the new programming language to be used for iOS and Mac development in future: Swift. This new language is a radical departure from Objective-C and, of course, has caused a change in our plan for writing this book. It boiled down to the decision of releasing the current status of this essay without continuing our journey in unfolding the topics we originally planned to include. Objective-C is not going anywhere but at the same time continuing to write a book on a language that will not receive the same attention as it used to, is not a wise move.
We have released this book for free and for the community because we hope to provide value to the reader, if each one of you can learn at least one best practice we have reached our goal.
We have done our best to polish this text and make it pleasant to the reader but we may have made typos, mistakes or left any part incomplete. We strongly encourage you to give us feedback and suggest improvements, so please get in touch with us if have any. We particularly appreciate pull requests.
Luca Bernardi
Alberto De Bortoli
Conditional bodies should always use braces even when a conditional body could be written without braces (e.g., it is one line only) to prevent errors. These errors include adding a second line and expecting it to be part of the if-statement. Another, even more dangerous defect, may happen where the line "inside" the if-statement is commented out, and the next line unwittingly becomes part of the if-statement.
Preferred:
if (!error) {
return success;
}
Not preferred:
if (!error)
return success;
or
if (!error) return success;
In February 2014 the well-know goto fail was found in the Apple's SSL/TLS implementation.
The bug was due to a repeated goto statement after an if condition, wrapping the if branch in parentheses would have prevented the issue.
The code extract:
static OSStatus
SSLVerifySignedServerKeyExchange(SSLContext *ctx, bool isRsa, SSLBuffer signedParams,
uint8_t *signature, UInt16 signatureLen)
{
OSStatus err;
...
if ((err = SSLHashSHA1.update(&hashCtx, &serverRandom)) != 0)
goto fail;
if ((err = SSLHashSHA1.update(&hashCtx, &signedParams)) != 0)
goto fail;
goto fail;
if ((err = SSLHashSHA1.final(&hashCtx, &hashOut)) != 0)
goto fail;
...
fail:
SSLFreeBuffer(&signedHashes);
SSLFreeBuffer(&hashCtx);
return err;
}
Easy to spot, there are 2 goto fail; lines one after the other without parentheses. We definitely don't want to risk creating bugs like the one above right?
In addition, this style is more consistent with all other conditionals, and therefore more easily scannable.
Always avoid Yoda conditions. A Yoda condition is when comparing a constant to a variable instead of the other way around. It's like saying "if blue is the sky" or "if tall is the man" instead of "if the sky is blue" or "if the man is tall".
Preferred:
if ([myValue isEqual:@42]) { ...
Not preferred:
if ([@42 isEqual:myValue]) { ...
On a similar note of the Yoda conditions, also the nil check has been at the centre of debates. Some notous libraries out there use to check for an object to be or not to be nil as so:
if (nil == myValue) { ...
One could argue that this is amiss or similar to a Yoda condition as nil is kind of a constant. The reason why sometimes programmers use this approach to prevent error that are difficult to debug. Consider the following code:
if (myValue == nil) { ...
If a typo occurs and the programmer actually types:
if (myValue = nil) { ...
it would be a valid assignment, indeed hard to debug if you are an experienced programmer (and therefore probably with some kind of visual impairment). That could never occur putting nil as argument on the left as it is nor assignable. There is also to be said that if the programmer uses this approach, he or she is perfectly aware of the underlying motivation and therefore the whole thing decades as it would be better to just double check what just typed.
More on this, to avoid all this fuss the approach that leave no space to doubt is to use the exclamation mark. Since nil resolves to NO it is unnecessary to compare it in conditions. Also, never compare something directly to YES, because YES is defined to 1 and a BOOL can be up to 8 bits as it is a char underneath.
Preferred:
if (someObject) { ...
if (![someObject boolValue]) { ...
if (!someObject) { ...
Not Preferred:
if (someObject == YES) { ... // Wrong
if (myRawValue == YES) { ... // Never do this.
if ([someObject boolValue] == NO) { ...
This allows also for more consistency across files and greater visual clarity.
When coding with conditionals, the left hand margin of the code should be the "golden" or "happy" path. That is, don't nest if statements. Multiple return statements are OK. This will avoid the growth of cyclomatic complexity and make the code easier to read because the important part of your method is not nested inside a branch but you have a visual clue of what is the most relevant code.
Preferred:
- (void)someMethod {
if (![someOther boolValue]) {
return;
}
//Do something important
}
Not preferred:
- (void)someMethod {
if ([someOther boolValue]) {
//Do something important
}
}
When you have complex condition in the if clause you should always extract them and assign to a BOOL variable to make more clear the logic and the meaning of every single conditions.
BOOL nameContainsSwift = [sessionName containsString:@"Swift"];
BOOL isCurrentYear = [sessionDateCompontents year] == 2014;
BOOL isSwiftSession = nameContainsSwift && isCurrentYear;
if (isSwiftSession) {
// Do something very cool
}
The Ternary operator, ? , should only be used when it increases clarity or code neatness. A single condition is usually all that should be evaluated. Evaluating multiple conditions is usually more understandable as an if statement, or refactored into instance variables.
Preferred:
result = a > b ? x : y;
Not preferred:
result = a > b ? x = c > d ? c : d : y;
When the second argument of the ternary operator (the if branch) returns the same object that was checked for existence in the condition, the following syntax is neat:
Preferred:
result = object ? : [self createObject];
Not preferred:
result = object ? object : [self createObject];
When methods return an error parameter by reference, check the returned value, not the error variable.
Preferred:
NSError *error = nil;
if (![self trySomethingWithError:&error]) {
// Handle Error
}
Moreover, some of Apple's APIs write garbage values to the error parameter (if non-NULL) in successful cases, so checking the error can cause false negatives (and subsequently crash).
Braces are not required for case statements, unless enforced by the complier.
When a case contains more than one line, braces should be added.
switch (condition) {
case 1:
// ...
break;
case 2: {
// ...
// Multi-line example using braces
break;
}
case 3:
// ...
break;
default:
// ...
break;
}
There are times when the same code can be used for multiple cases, and a fall-through should be used. A fall-through is the removal of the 'break' statement for a case thus allowing the flow of execution to pass to the next case value.
switch (condition) {
case 1:
c
Selected from shared topics, language and repository description—not editorial ratings.
brunofacca /
Base application for Ruby on Rails 6 projects. Built to minimize the time spent writing boilerplate code and performing repetitive setup tasks.
zena /
zena is a state-of-the-art CMS (content managment system) based on Ruby on Rails with a focus on usability, ease of customization and web 2.0 goodness (application like behaviour).
brightcove-archive /
Official home of the RVideo project, a Ruby gem for video and audio transcoding.
Version release : v1.0.16 Author : pedro ubuntu [ r00t-3xp10it ] Codename: Aconite (Aconitum napellus) Distros Supported : Linux Ubuntu, Kali, Mint, Parrot OS Suspicious-Shell-Activity (SSA) RedTeam develop @2019 banner LEGAL DISCLAMER The author does not hold any responsibility for the bad use of this tool, remember that attacking targets without prior consent is illegal and punished by law. So use this tool responsibly. FRAMEWORK DESCRIPTION The script will use msfvenom (metasploit) to generate shellcode in diferent formats ( C# | python | ruby dll | msi | hta-psh | docm | apk | macho | elf | deb | mp4 | etc ) injects the shellcode generated into one template (example: python) "the python funtion will execute the shellcode into ram" and uses compilers like gcc (gnu cross compiler) or mingw32 or pyinstaller to build the executable file. It also starts a multi-handler to recive the remote connection (shell or meterpreter session). 'venom generator' reproduces some of the technics used by Veil-Evasion.py, unicorn.py, powersploit.py, etc.. HOW DO I DELIVER MY PAYLOADS TO TARGET HOST ? venom 1.0.11 (malicious_server) was build to take advantage of apache2 webserver to deliver payloads (LAN) using a fake webpage writen in html that takes advantage of <iframe> <meta-http-equiv> or <form> tags to be hable to trigger payload downloads, the user just needs to send the link provided to target host. "Apache2 (malicious url) will copy all files needed to your webroot, and starts apache for you." venom shellcode v1.0.16 DEPENDENCIES Zenity | Metasploit | GCC (compiler) | Pyinstaller (compiler) | mingw32 (compiler) | pyherion.py (crypter) wine (emulator) | PEScrambler.exe (PE obfuscator) | apache2 (webserver)| winrar (wine) | shellter (KyRecon) vbs-obfuscator (obfuscator) | avet (Daniel Sauder) | ettercap (MitM + DNS_Spoofing) | icmpsh (ICMP shell) openssl (build SSL certs) | CarbonCopy (sign exe binarys) | ResourceHacker (wine) | NXcrypt (python crypter) "venom.sh will download/install all dependencies as they are needed". Adicionally was build the script venom-main/aux/setup.sh to help you install all framework dependencies fast and easy. we just need to install first the most importante dependencies before trigger setup.sh = zenity, metasploit, ettercap .. DOWNLOAD/INSTALL 1º - Download framework from github git clone https://github.com/r00t-3xp10it/venom.git 2º - Set execution permitions cd venom-main sudo find ./ -name "*.sh" -exec chmod +x {} \; sudo find ./ -name "*.py" -exec chmod +x {} \; 3º - Install all dependencies cd aux && sudo ./setup.sh 4º - Run main tool sudo ./venom.sh Update venom instalation (compare local version againts github oficial version) sudo ./venom.sh -u Framework Main Menu banner venom shellcode v1.0.16 venom shellcode v1.0.16 Detailed info about release 1.0.16: https://github.com/r00t-3xp10it/venom/releases
Xantipo /
var ender = 0; var mon = 0; var ninja = 0; var DwarfS = 0; var Wind = 0; var Dg = 0; var Zen = 0; var Inf = 0; var min = 0; var death = 0; var guard = 0; var basilisk = 0; var dpet = 0; var king = 0; var queen = 0; var fallen = 0; var GUI; var ctx = com.mojang.minecraftpe.MainActivity.currentMainActivity.get(); var blockx; var blocky; var blockz; var on = false; var digg=0; var velX; var velY; var velZ; var flame; var knife; var shotgun; var tnt; var dig; shotgun=80; knife=80; flame=81; tnt=65; Block.defineBlock(189,"Broken uncharged Healing Block", [["redstone_block", 0], ["redstone_block", 0], ["redstone_block", 0], ["redstone_block", 0], ["redstone_block", 0], ["redstone_block",0]] ,19,19,0); Block.defineBlock(190,"Healing Block uncharged", [["redstone_block", 0], ["redstone_block", 0], ["redstone_block", 0], ["redstone_block", 0], ["redstone_block", 0], ["redstone_block",0]] ,19,19,0); Block.defineBlock(191,"Healing Block Charged", [["redstone_block", 0], ["redstone_block", 0], ["redstone_block", 0], ["redstone_block", 0], ["redstone_block", 0], ["redstone_block",0]],19,19,0); Block.defineBlock(192,"Soul Block", [["quartz_block", 0], ["quartz_block", 0], ["quartz_block", 0], ["quartz_block", 0], ["quartz_block", 0], ["quartz_block",0]],19,19,0); Block.defineBlock(193,"Godly Soul Block", [["quartz_block", 0], ["quartz_block", 0], ["quartz_block", 0], ["quartz_block", 0], ["quartz_block", 0], ["quartz_block",0]],19,19,0); Block.defineBlock(194,"Quest Block", [["coal_block", 0], ["coal_ore", 0], ["quartz_ore", 0], ["quartz_ore", 0], ["quartz_ore", 0], ["quartz_ore",0]],19,19,0); Block.defineBlock(195,"Quest Block", [["lapis_block", 0], ["lapis_ore", 0], ["quartz_ore", 0], ["quartz_ore", 0], ["quartz_ore", 0], ["quartz_ore",0]],19,19,0); Block.defineBlock(196,"Quest Block", [["redstone_block", 0], ["redstone_ore", 0], ["quartz_ore", 0], ["quartz_ore", 0], ["quartz_ore", 0], ["quartz_ore",0]],19,19,0); Block.defineBlock(197,"Quest Block", [["iron_block", 0], ["iron_ore", 0], ["quartz_ore", 0], ["quartz_ore", 0], ["quartz_ore", 0], ["quartz_ore",0]],19,19,0); Block.defineBlock(198,"Quest Block", [["diamond_block", 0], ["diamond_ore", 0], ["quartz_ore", 0], ["quartz_ore", 0], ["quartz_ore", 0], ["quartz_ore",0]],19,19,0); Block.setShape(198, 0, 0, 0, 1, 1, 1); Block.defineBlock(199, ChatColor.BLACK+ "Great Sword", [["iron_block", 0], ["iron_block", 0], ["iron_block", 0], ["iron_block", 0], ["iron_block", 0], ["iron_block",0]],19,19,0); Block.setShape(199, 0, 0, 0, 0.25, 8, 0.75); Block.defineBlock(200,"Block of Steel", [["iron_block", 0], ["iron_block", 0], ["iron_block", 0], ["iron_block", 0], ["iron_block", 0], ["iron_block",0]] ,19,19,0); Block.defineBlock(201, ChatColor.BLACK+ "Great Sword +1", [["iron_block", 0], ["iron_block", 0], ["iron_block", 0], ["iron_block", 0], ["iron_block", 0], ["iron_block",0]] ,19,19,0); Block.setShape(201, 0, 0, 0, 0.25, 8, 0.75) Block.defineBlock(202, ChatColor.BLACK+ "Great Sword +2", [["iron_block", 0], ["iron_block", 0], ["iron_block", 0], ["iron_block", 0], ["iron_block", 0], ["iron_block",0]] ,19,19,0); Block.setShape(202, 0, 0, 0, 0.25, 8, 0.75) Block.defineBlock(203,"Anciant Lock Stone", [["cobblestone_mossy", 0], ["cobblestone_mossy", 0], ["cobblestone_mossy", 0], ["cobblestone_mossy", 0], ["bedrock", 0], ["cobblestone_mossy",0]],19,19,0); Block.defineBlock(204,"Legendary Bell", [["ice_packed", 0], ["ice_packed", 0], ["ice_packed", 0], ["ice_packed", 0], ["ice_packed", 0], ["ice_packed",0]],19,19,0); Block.defineBlock(205,"Guard Caller", [["redstone_block", 0], ["redstone_block", 0], ["redstone_block", 0], ["redstone_block", 0], ["redstone_block", 0], ["redstone_block",0]],19,19,0); Block.defineBlock(206, ChatColor.GOLD+ "Royal Guardian Blade", [["dragon_egg", 0], ["dragon_egg", 0], ["dragon_egg", 0], ["dragon_egg", 0], ["dragon_egg", 0], ["dragon_egg",0]],19,19,0); Block.setShape(206,0, 0, 0, 0.35,7.5, 0.95); Block.defineBlock(207, ChatColor.BLACK+ "Dragonslayer Spear", [["gold_block", 0], ["gold_block", 0], ["gold_block", 0], ["gold_block", 0], ["gold_block", 0], ["gold_block",0]],19,19,0); Block.setShape(207,-1, 0,0.5,8,0.2, 0.2); Block.defineBlock(208, ChatColor.BLACK+ "Queen Blade", [["enchanting_table_top", 0], [ "enchanting_table_top", 0], ["enchanting_table_top", 0], ["enchanting_table_top", 0], ["enchanting_table_top", 0], ["enchanting_table_top", 0]],19,19,0); Block.setShape(208,0, 0, 0, 0.35,9, 0.9); Block.defineBlock(209, ChatColor.RED+ "Big Bertha", [["enchanting_table_bottom", 0], ["enchanting_table_bottom", 0], ["enchanting_table_bottom", 0], ["enchanting_table_bottom", 0], ["enchanting_table_bottom", 0], ["enchanting_table_bottom", 0]],19,19,0); Block.setShape(209,0, 0, 0, 0.35,10, 0.94); Block.defineBlock(210, ChatColor.WHITE+ "Slice", [["enchanting_table_side", 0], ["glass", 0], ["glass", 0], ["enchanting_table_side", 0], ["enchanting_table_side", 0], ["enchanting_table_side", 0]],19,19,0); Block.setShape(210,0, 0, 0, 0.35,9.5, 0.94); ModPE.setItem(380,"record_far",0, ChatColor.BLACK+ "Chime Hammer",1); ModPE.setItem(385,"brewing_stand",0, ChatColor.RED+ "Light Saber",1); ModPE.setItem(381,"lead",0,"Story 1",1); ModPE.setItem(382,"lead",0,"Story 2",1); ModPE.setItem(384,"book_writable",0,"Diary of the lone Knight",1); ModPE.setItem(400,"ghast_tear",0,"Ender Giant Sword",1); ModPE.setItem(401,"cauldron",0, ChatColor.BLACK+ "Monking Sword",1); ModPE.setItem(402,"flower_pot",0,"Ninja Dagger",1); ModPE.setItem(403,"gold_nugget",0,"Dwarf Spear",1); ModPE.setItem(404,"ender_eye",0,"Wind Sword",1); ModPE.setItem(405,"nether_wart",0, ChatColor.BLUE+ "Zenpakuto",1); ModPE.setItem(406,"iron_horse_armor",0,"Diamond Giant Sword",1); ModPE.setItem(407,"gold_horse_armor",0,"Syringe"); ModPE.setItem(408,"gold_horse_armor",0,"Filled Syringe"); ModPE.setItem(409,"gold_horse_armor",0,"Monster Blood Filled Syringe"); ModPE.setItem(410,"ender_pearl",0,"Mystic Gem",16); ModPE.setItem(411,"ender_pearl",0,"Mystic Gem 25% Charged",16); ModPE.setItem(412,"ender_pearl",0,"Mystic Gem 50% Charged",16); ModPE.setItem(413,"ender_pearl",0,"Mystic Gem 100% Charged",16); ModPE.setItem(414,"diamond_horse_armor",0,"Iron Giant Sword",1); ModPE.setItem(415,"redstone_dust",0,"Bloody Flesh Tear I"); ModPE.setItem(416,"redstone_dust",0,"Bloody Flesh Tear II"); ModPE.setItem(417,"redstone_dust",0,"Bloody Flesh Tear III"); ModPE.setItem(418,"redstone_dust",0,"Living Mass"); ModPE.setItem(419,"empty_armor_slot_leggings",0,"Bio-Mass Stick"); ModPE.setItem(420,"name_tag",0,"Bio-Mass Giant Sword",1); ModPE.setItem(421,"redstone_dust",0,"Bio-Mass",16); ModPE.setItem(422,"nether_star",0,"Cleaver",1); ModPE.setItem(423,"iron_ingot",0,"Steel",64); ModPE.setItem(424,"diamond",0,"Hardened Diamond",16); ModPE.setItem(425,"lead",0, ChatColor.BLUE+ "Spawn Monking",1); ModPE.setItem(426,"sword",4,"Hardened Diamond Sword",1); ModPE.setItem(427,"ruby",0,"Dungeon Crystal",10); ModPE.setItem(428,"apple_golden",0,"Healing Shard",16); ModPE.setItem(429,"egg",0, ChatColor.GREEN+ "Easter Egg",1); ModPE.setItem(430,"sword",3, ChatColor.RED+ "Crazy Blade",1); ModPE.setItem(431,"lead",0, ChatColor.BLUE+"Infected PigZombie King Summoner",1); ModPE.setItem(432,"blaze_powder",0, "Soul Shard",16); ModPE.setItem(433,"blaze_powder",0, "Soul",16); ModPE.setItem(434,"hoe",4, "Soul Stealer",1); ModPE.setItem(435,"empty_armor_slot_chestplate",0,"Crafting Stone"); ModPE.setItem(436,"fireworks",0, ChatColor.BLUE+ " Soul _Eater ",1); ModPE.setItem(437,"spider_eye",0, ChatColor.BLUE+ " Blade_of_Souls ",1); ModPE.setItem(438,"empty_armor_slot_leggings",0," Living_Biomass Stick "); ModPE.setItem(439,"apple_golden",0,"OverCharged Healing Shard",16); ModPE.setItem(440,"quiver",0, ChatColor.AQUA+ "Infinity_Blade",1); ModPE.setItem(441,"boat",0, "Godly Stick"); ModPE.setItem(442,"lead",0, ChatColor.BLUE+"Call Ender Dragon Raptor Horde",1); ModPE.setItem(443,"hopper",0, ChatColor.GREEN+ "Mystic Giant Sword",1); ModPE.setItem(444,"blaze_powder",0, ChatColor.WHITE+ "Dragonborn Soul",1); ModPE.setItem(445,"blaze_powder",0, ChatColor.WHITE+ "Monking Soul",1); ModPE.setItem(446,"blaze_powder",0, ChatColor.WHITE+ "PigZombie King Soul",1); ModPE.setItem(447,"empty_armor_slot_helmet",0, ChatColor.BLACK+ "Dragonslayer Torso",1); ModPE.setItem(448,"potion_bottle_empty",0, "Empty Bottle",16); ModPE.setItem(449,"potion_bottle_splash",0, ChatColor.Yellow+ "Estus Flakon",6); ModPE.setItem(450,"book_writable",0, ChatColor.LIME+ "Boss Guide",1); ModPE.setItem(451,"sword",3, ChatColor.BLACK+ "Inected Blade",1); ModPE.setItem(452,"sword",4,"Fire Diamond Sword",1); ModPE.setItem(453,"sword",3,"Fire Gold Sword",1); ModPE.setItem(454,"sword",2,"Fire Iron Sword",1); ModPE.setItem(455,"sword",1,"Fire Stone Sword",1); ModPE.setItem(456,"sword",0,"Fire Wood Sword",1); ModPE.setItem(457,"magma_cream",0,"Fire Shlick[BUFF]",1); ModPE.setItem(459,"diamond_horse_armor",0,"Fire Iron Giant Sword",1); ModPE.setItem(460,"sword",4,"Fire Hardened Diamond Sword",1); ModPE.setItem(461,"magma_cream",0,"Sunlight Blade[BUFF]",16); ModPE.setItem(462,"sword",4,"Thunder Diamond Sword",1); ModPE.setItem(463,"sword",3,"Thunder Gold Sword",1); ModPE.setItem(464,"sword",2,"Thunder Iron Sword",1); ModPE.setItem(465,"sword",1,"Thunder Stone Sword",1); ModPE.setItem(466,"sword",0,"Thunder Wooden Sword",1); ModPE.setItem(467,"ghast_tear",0,"Thunder Ender Giant Sword",1); ModPE.setItem(468,"diamond_horse_armor",0,"Thunder Iron Giant Sword",1); ModPE.setItem(469,"sword",2,"Steel Sword",1); ModPE.setItem(470,"sword",4,"Thunder Hardened Diamond Sword",1); ModPE.setItem(471,"diamond_horse_armor",0,"Steel Giant Sword",1); ModPE.setItem(472,"diamond_horse_armor",0,"Fire Steel Giant Sword",1); ModPE.setItem(473,"diamond_horse_armor",0,"Thunder Steel Giant Sword",1); ModPE.setItem(474,"sword",2,"Fire Steel Sword",1); ModPE.setItem(475,"sword",2,"Thunder Steel Sword",1); ModPE.setItem(476,"iron_horse_armor",0,"Diamond Giant Sword",1); ModPE.setItem(477,"iron_horse_armor",0,"Fire Diamond Giant Sword",1); ModPE.setItem(478,"iron_horse_armor",0,"Thunder Diamond Giant Sword",1); ModPE.setItem(479,"blaze_powder",0,"King Soul"); ModPE.setItem(480,"slimeball",0, ChatColor.BLACK+ "Wolffang Rapier",1); ModPE.setItem(481,"record_13",0, ChatColor.BLACK+ "Minotaurus Hammer",1); ModPE.setItem(482,"blaze_powder",0, ChatColor.WHITE+ "Minotaurus Soul"); ModPE.setItem(483,"blaze_powder",0, ChatColor.WHITE+ "Cursed Wolf Soul"); ModPE.setItem(484,"lead",0, ChatColor.BLUE+"Spawn Minotaurus",1); ModPE.setItem(485,"lead",0, ChatColor.BLUE+"Cursed Wolf Bait",1); ModPE.setItem(486,"map_empty",0, ChatColor.BLACK+ "Aun_Tauns Battleaxe",1); ModPE.setItem(487,"rotten_flesh",0,"Dragonslayer Sword",1); ModPE.setItem(488,"rotten_flesh",0,"Dragonslayer Sword +1",1); ModPE.setItem(489,"rotten_flesh",0,"Dragonslayer Sword +2",1); ModPE.setItem(490,"rotten_flesh",0,"Dragonslayer Sword +3",1); ModPE.setItem(491,"rotten_flesh",0,"Dragonslayer Sword +4",1); ModPE.setItem(492,"slimeball",0, ChatColor.BLACK+ "Wolffang Rapier +1",1); ModPE.setItem(493,"slimeball",0, ChatColor.BLACK+ "Wolffang Rapier +2",1); ModPE.setItem(494,"record_13",0, ChatColor.BLACK+ "Minotaurus Hammer +1",1); ModPE.setItem(495,"record_13",0, ChatColor.BLACK+ "Minotaurus Hammer +2",1); ModPE.setItem(496,"sword",3, ChatColor.BLACK+ "Inected Blade +1",1); ModPE.setItem(497,"sword",3, ChatColor.BLACK+ "Inected Blade +2",1); ModPE.setItem(498,"cauldron",0, ChatColor.BLACK+ "Monking Sword +1",1); ModPE.setItem(499,"cauldron",0, ChatColor.BLACK+ "Monking Sword +2",1); ModPE.setItem(500,"record_strad",0, ChatColor.AQUA+ "Moonlight Great Sword",1); ModPE.setItem(501,"record_mellohi",0,"Soul Infused Crystal Dust"); ModPE.setItem(502,"record_chirp",0,"Titan Ingot"); ModPE.setItem(503,"record_wait",0, ChatColor.RED+ "Drakeblood Sword",1); ModPE.setItem(504,"record_wait",0, ChatColor.RED+ "Drakeblood Sword +1",1); ModPE.setItem(505,"record_wait",0, ChatColor.RED+ "Drakeblood Sword +2",1); ModPE.setItem(506,"record_wait",0, ChatColor.RED+ "Drakeblood Sword +3",1); ModPE.setItem(507,"record_stal",0, ChatColor.RED+ "Dragoor Blade",1); ModPE.setItem(508,"empty_armor_slot_boots",0, ChatColor.BLACK+ "Armor of the Deathless",1); ModPE.setItem(509,"fish_raw",0,"Light Saber (closed)",1); ModPE.setItem(510,"record_11",0, ChatColor.BLUE+ "LightSaber",1); ModPE.setItem(511,"fish_cooked",0,"Light Saber (closed)",1); ModPE.setItem(390,"book_writable",0,"Monlog of the Forgotten King",1); ModPE.setItem(391,"lead",0,"Forgotten King",1); ModPE.setItem(392,"book_enchanted",0, ChatColor.BLUE+ "Infinity_Blade",1); ModPE.setItem(393,"ender_pearl",0, "Ender Raptor Pet",1); ModPE.setItem(394,"blaze_powder",0, ChatColor.BLACK+ "Tower Guard Soul",1); ModPE.setItem(395,"skull_steve",0, "Flee",1); ModPE.setItem(396,"skull_skeleton",0,"Fight",1); ModPE.setItem(397,"skull_creeper",0, ChatColor.BLACK+ "Dragonslayer Axe",1); ModPE.setItem(398,"blaze_powder",0, ChatColor.GOLD+ "Royal Soul",1); ModPE.setItem(399,"blaze_powder",0, ChatColor.BLACK+ "Deathless King Soul",1); ModPE.setItem(379,"emerald",0, "pet gear",1); ModPE.setItem(378,"skull_zombie",0, ChatColor.GOLD+ "Roayl Fighting Set",1); ModPE.setItem(377,"blaze_powder",0, ChatColor.GOLD+ "King Soul",9); ModPE.setItem(376,"minecart_tnt",0, ChatColor.BLACK+ "Primal Long Sword",1); ModPE.setItem(375,"lead",0, ChatColor.BLUE+ "Fallen Hero",1); ModPE.setItem(373,"minecart_tnt",0, ChatColor.BLACK+ "Chaotic Long Sword",1); ModPE.setItem(374,"item_frame",0, ChatColor.RED+ "Abysal Whip",1); ModPE.setItem(373,"item_frame",0, ChatColor.RED+ "Abysal Whip +1",1); ModPE.setItem(372,"item_frame",0, ChatColor.RED+ "Abysal Whip +2",1); ModPE.setItem(371,"map_empty",0, ChatColor.BLACK+ "Aun_Tauns Battleaxe +1",1); ModPE.setItem(370,"map_empty",0, ChatColor.BLACK+ "Aun_Tauns Battleaxe +2",1); ModPE.setItem(369,"skull_creeper",0, ChatColor.BLACK+ "Dragonslayer Axe +1",1); ModPE.setItem(368,"skull_creeper",0, ChatColor.BLACK+ "Dragonslayer Axe +2",1); Item.addCraftRecipe(406,1,0,[435,1,0,264,1,0,264,1,0,264,1,0,264,1,0,264,1,0,280,1,0,264,1,0,435,1,0]); Item.addCraftRecipe(407,1,0,[435,3,0,20,1,0,435,1,0,20,1,0,435,1,0,20,1,0,435,1,0]); Item.addCraftRecipe(410,1,0,[435,1,0,265,1,0, 435,1,0,265,1,0,264,1,0,265,1,0,435,1,0,265,1,0,435,1,0]); Item.addCraftRecipe(414,1,0,[435,1,0,265,1,0,265,1,0,265,1,0,265,1,0,265,1,0,280,1,0,265,1,0,435,1,0]); Item.addCraftRecipe(400,1,0,[435,1,0,49,1,0,49,1,0,49,1,0,413,1,0,49,1,0,419,1,0,49,1,0,435,1,0]); Item.addCraftRecipe(383,1,12,[435,1,0,319,1,0,435,1,0,319,1,0,409,1,0,319,1,0,435,1,0,319,1,0,435,1,0]); Item.addCraftRecipe(383,1,13,[435,1,0,35,1,0,435,1,0,35,1,0,409,1,0,35,1,0,435,1,0,35,1,0,435,1,0]); Item.addCraftRecipe(383,1,11,[435,1,0,363,1,0,435,1,0,363,1,0,409,1,0,363,1,0,435,1,0,363,1,0,435,1,0]); Item.addCraftRecipe(383,1,10,[435,1,0,288,1,0,435,1,0,288,1,0,409,1,0,288,1,0,435,1,0,288,1,0,435,1,0]); Item.addCraftRecipe(383,1,95,[435,1,0,352,1,0,435,1,0,352,1,0,409,1,0,352,1,0,435,1,0,352,1,0,435,1,0]); Item.addCraftRecipe(52,1,0,[101,1,0,101,1,0,101,1,0,101,1,0,409,1,0,101,1,0,101,1,0,01,1,0,101,1,0]); Item.addCraftRecipe(415,1,0,[408,1,0,435,3,0,319,1,0,435,1,0,435,1,0,435,1,0,409,1,0]); Item.addCraftRecipe(416,1,0,[408,1,0,435,1,0,435,1,0,435,1,0,415,1,0,435,1,0,435,1,0,435,1,0,409,1,0]); Item.addCraftRecipe(417,1,0,[408,1,0,435,1,0,435,1,0,435,1,0,416,1,0,435,1,0,435,1,0,435,1,0,409,1,0]); Item.addCraftRecipe(418,1,0,[408,1,0,435,1,0,435,1,0,435,1,0,417,1,0,435,1,0,435,1,0,435,1,0,409,1,0]); Item.addCraftRecipe(421,1,0,[417,1,0,417,1,0,417,1,0,418,1,0,417,1,0,417,1,0,417,1,0,417,1,0,417,1,0]); Item.addCraftRecipe(420,1,0,[435,1,0,421,1,0,421,1,0,421,1,0,421,1,0,421,1,0,419,1,0,421,1,0,435,1,0]); Item.addCraftRecipe(422,1,0,[435,1,0,200,1,0,406,1,0,200,1,0,414,1,0,200,1,0,419,1,0,200,1,0,435,1,0]); Item.addCraftRecipe(423,1,0,[265,2,0]); Item.addCraftRecipe(426,1,0,[435,2,0,426,1,0,435,1,0,424,1,0,424,1,0,435,1,0,280,1,0,435,2,0]); Item.addCraftRecipe(419,1,0,[435,1,0,421,1,0,435,1,0,421,1,0,280,1,0,421,1,0,435,1,0,421,1,0,435,1,0]); Item.addCraftRecipe(189,1,0,[428,3,0,408,1,0,413,1,0,408,1,0,428,3,0]); Item.addCraftRecipe(190,1,0,[428,4,0,189,1,0,428,4,0]); Item.addCraftRecipe(191,1,0,[413,4,0,190,1,0,413,4,0]); Item.addCraftRecipe(427,1,0,[424,1,0,421,1,0,424,1,0,413,1,0,428,1,0,432,1,0,424,1,0,421,1,0,424,1,0]); Item.addCraftRecipe(428,1,0,[421,3,0,408,1,0,421,1,0,409,1,0,421,3,0]); Item.addCraftRecipe(402,1,0,[435,4,0,427,1,0,435,1,0,419,1,0,435,2,0]); Item.addCraftRecipe(403,1,0,[435,1,0,427,2,0,435,1,0,419,1,0,427,1,0,419,1,0,435,2,0]); Item.addCraftRecipe(404,1,0,[435,2,0,427,1,0,435,1,0,427,1,0,435,1,0,419,1,0,435,2,0]); Item.addCraftRecipe(425,1,0,[264,4,0,264,1,0,264,4,0]); Item.addCraftRecipe(424,1,0,[423,4,0,264,1,0,423,4,0]); Item.addCraftRecipe(426,1,0,[435,2,0,424,1,0,435,1,0,424,1,0,0,1,0,280,1,0,435,2,0]); Item.addCraftRecipe(430,1,0,[266,6,0,280,1,0,266,2,0]); Item.addCraftRecipe(431,1,0,[264,4,0,427,1,0,264,4,0]); Item.addCraftRecipe(432,1,0,[433,9,0]); Item.addCraftRecipe(434,1,0,[428,3,0,435,1,0,419,1,0,435,1,0,280,1,0,435,2,0]); Item.addCraftRecipe(192,1,0,[432,9,0]); Item.addCraftRecipe(438,1,0,[432,3,0,413,1,0,419,1,0,413,1,0,432,3,0]); Item.addCraftRecipe(436,1,0,[192,2,0,434,1,0,435,1,0,190,1,0,438,1,0,438,1,0,435,2,0]); Item.addCraftRecipe(437,1,0,[192,1,0,439,1,0,192,2,0,426,1,0,192,1,0,49,1,0,438,1,0,49,1,0]); Item.addCraftRecipe(439,1,0,[428,9,0]); Item.addCraftRecipe(193,1,0,[192,9,0]); Item.addCraftRecipe(440,1,0,[193,2,0,426,1,0,193,1,0,426,1,0,193,1,0,441,1,0,193,2,0]); Item.addCraftRecipe(441,1,0,[193,1,0,435,2,0,193,1,0,435,2,0,193,1,0,435,2,0]); Item.addCraftRecipe(448,3,0,[20,1,0,435,1,0,20,2,0,435,1,0,20,4,0]); Item.addCraftRecipe(449,2,0,[448,1,0,428,1,0,448,1,0]); Item.addCraftRecipe(450,1,0,[17,1,0]); Item.addCraftRecipe(194,1,0,[17,9,0]); Item.addCraftRecipe(442,1,0,[264,4,0,427,1,0,264,4,0]); Item.addCraftRecipe(457,8,0,[263,9,0]); Item.addCraftRecipe(452,1,0,[276,1,0,457,1,0]); Item.addCraftRecipe(453,1,0,[283,1,0,457,1,0]); Item.addCraftRecipe(454,1,0,[267,1,0,457,1,0]); Item.addCraftRecipe(455,1,0,[272,1,0,457,1,0]); Item.addCraftRecipe(456,1,0,[268,1,0,457,1,0]); Item.addCraftRecipe(459,1,0,[414,1,0,457,1,0]); Item.addCraftRecipe(460,1,0,[426,1,0,457,1,0]); Item.addCraftRecipe(462,1,0,[276,1,0,461,1,0]); Item.addCraftRecipe(463,1,0,[283,1,0,461,1,0]); Item.addCraftRecipe(464,1,0,[267,1,0,461,1,0]); Item.addCraftRecipe(465,1,0,[262,1,0,461,1,0]); Item.addCraftRecipe(466,1,0,[268,1,0,461,1,0]); Item.addCraftRecipe(467,1,0,[400,1,0,461,1,0]); Item.addCraftRecipe(200,1,0,[423,9,0]); Item.addCraftRecipe(468,1,0,[414,1,0,461,1,0]); Item.addCraftRecipe(469,1,0,[435,2,0,423,1,0,435,1,0,423,1,0,435,1,0,280,1,0,435,1,0]); Item.addCraftRecipe(470,1,0,[426,1,0,461,1,0]); Item.addCraftRecipe(471,1,0,[435,1,0,423,1,0,423,1,0,423,1,0,423,1,0,423,1,0,280,1,0,423,1,0,435,1,0]); Item.addCraftRecipe(472,1,0,[471,1,0,457,1,0]); Item.addCraftRecipe(473,1,0,[471,1,0,461,1,0]); Item.addCraftRecipe(474,1,0,[469,1,0,457,1,0]); Item.addCraftRecipe(475,1,0,[469,1,0,461,1,0]); Item.addCraftRecipe(442,1,0,[427,9,0]); Item.addCraftRecipe(501,2,0,[433,4,0,413,1,0,433,4,0]); Item.addCraftRecipe(500,1,0,[264,1,0,501,2,0,432,1,0,413,1,0,432,1,0,265,1,0,501,1,0,264,1,0]); Item.addCraftRecipe(488,1,0,[502,1,0,487,1,0]); Item.addCraftRecipe(489,1,0,[502,1,0,488,1,0]); Item.addCraftRecipe(490,1,0,[502,1,0,489,1,0]); Item.addCraftRecipe(491,1,0,[502,1,0,490,1,0]); Item.addCraftRecipe(492,1,0,[502,1,0,480,1,0]); Item.addCraftRecipe(493,1,0,[502,1,0,492,1,0]); Item.addCraftRecipe(494,1,0,[502,1,0,481,1,0]); Item.addCraftRecipe(495,1,0,[502,1,0,494,1,0]); Item.addCraftRecipe(496,1,0,[502,1,0,451,1,0]); Item.addCraftRecipe(497,1,0,[502,1,0,496,1,0]); Item.addCraftRecipe(498,1,0,[502,1,0,401,1,0]); Item.addCraftRecipe(499,1,0,[502,1,0,498,1,0]); Item.addCraftRecipe(201,1,0,[502,1,0,199,1,0]); Item.addCraftRecipe(202,1,0,[502,1,0,201,1,0]); Item.addCraftRecipe(502,1,0,[432,3,0,264,3,0,432,3,0]); Item.addCraftRecipe(199,1,0,[200,2,0,413,1,0,200,1,0,413,1,0,200,1,0,17,1,0,200,2,0]); Item.addCraftRecipe(504,1,0,[502,1,0,503,1,0]); Item.addCraftRecipe(505,1,0,[502,1,0,504,1,0]); Item.addCraftRecipe(506,1,0,[502,1,0,505,1,0]); Item.addCraftRecipe(381,1,0,[17,9,0]); Item.addCraftRecipe(385,1,0,[427,1,0,435,1,0,200,1,0,435,1,0,427,1,0,435,1,0,200,1,0,435,1,0,427,1,0]); Item.addCraftRecipe(486,1,0,[457,2,0,49,1,0,264,1,0,438,1,0,457,1,0,438,1,0,264,1,0,457,1,0]); Item.addCraftRecipe(487,1,0,[435,1,0,192,2,0,461,1,0,41,1,0,192,1,0,438,1,0,461,1,0,435,1,0]); Item.addCraftRecipe(510,1,0,[57,1,0,435,1,0,200,1,0,435,1,0,57,1,0,435,1,0,200,1,0,435,1,0,57,1,0]); Item.addCraftRecipe(392,1,0,[502,1,0,427,1,0,502,1,0,427,1,0,440,1,0,427,1,0,502,1,0,427,1,0,502,1,0]); Item.addCraftRecipe(379,1,0,[435,1,0,192,1,0,435,1,0,192,1,9,413,1,0,192,1,0,435,1,0,192,1,0,435,1,0]); Item.addCraftRecipe(377,1,0,[398,9,0]); Item.addCraftRecipe(206,1,0,[377,9,0]); Item.addCraftRecipe(209,1,0,[401,1,0,427,1,0,440,1,0,503,1,0,451,1,0,427,1,0,441,1,0,427,1,0,193,1,0]); Item.addCraftRecipe(210,1,0,[265,4,0,209,1,0,265,4,0]); Item.addCraftRecipe(373,1,0,[502,1,0,374,1,0]); Item.addCraftRecipe(372,1,0,[502,1,0,373,1,0]); Item.addCraftRecipe(371,1,0,[502,1,0,486,1,0]); Item.addCraftRecipe(370,1,0,[502,1,0,371,1,0]); Item.addCraftRecipe(369,1,0,[502,1,0,397,1,0]); Item.addCraftRecipe(368,1,0,[502,1,0,369,1,0]); Item.addCraftRecipe(374,1,0,[444,3,0,445,3,0,446,3,0]); function modTick() { if(Player.getArmorSlot(0)==302&& Player.getArmorSlot(1)==303&& Player.getArmorSlot(2)==304&& Player.getArmorSlot(3)==305) { Player.setHealth(Entity.getHealth(Player.getEntity())+3); } } function addDraptorToRenderer(renderer) { var var2 = 0; var model = renderer.getModel(); var bipedBody = model.getPart("body").clear().setTextureOffset(16,16); bipedBody.addBox(-5.0, 3.0, -10.0, 7, 5, 24, var2); bipedBody.addBox(-3.0, 3.0, 14.0, 3, 1, 14, var2); var bipedHead = model.getPart("head").clear().setTextureOffset(0,0); bipedHead.addBox(-4.0, 1.0, -26.0, 5, 3, 10, var2); bipedHead.addBox(-4.0, 4.0, -17.0, 5, 2, 1, var2); bipedHead.addBox(-4.0, 6.0, -23.0, 5, 1, 6, var2); bipedHead.addBox(-5.0, 4.0, -16.0, 3, 2, 4, var2); var bipedRightArm = model.getPart("rightArm").clear().setTextureOffset(40,16); bipedRightArm.addBox(-23.0, 1.0, -5.0, 20, 1, 4, var2); bipedRightArm.addBox(-20.0, 1.0, -1.0, 17, 1, 4, var2); bipedRightArm.addBox(-16.0, 1.0, -3.0, 13, 1, 3, var2); var bipedLeftArm = model.getPart("leftArm").clear().setTextureOffset(40, 16); bipedLeftArm.addBox(4.0, 1.0, -5.0, 20, 1, 4, var2); bipedLeftArm.addBox(4.0, 1.0, -1.0, 17, 1, 4, var2); bipedLeftArm.addBox(4.0, 1.0, 3.0, 13, 1, 3, var2); var bipedRightLeg = model.getPart("rightLeg").clear().setTextureOffset(0, 16); bipedRightLeg.addBox(-3.0, 8.0, -1.0, 3, 5, 3, var2); bipedRightLeg.addBox(-3.0, 13.0, -3.0, 3, 1, 4, var2); var bipedLeftLeg = model.getPart("leftLeg").clear().setTextureOffset(0, 16); bipedLeftLeg.addBox(1.0, 8.0, -1.0, 3, 5, 3, var2); bipedLeftLeg.addBox(1.0, 13.0, -3.0, 3, 1, 4, var2); } var DraptorRenderer = Renderer.createHumanoidRenderer(); addDraptorToRenderer(DraptorRenderer); function addGolemToRenderer(renderer) { var var2 = 0; var model = renderer.getModel(); var bipedBody = model.getPart("body").clear().setTextureOffset(56, 0); bipedBody.addBox(-4.0, -16.0, -2.0, 20, 15, -15, var2); bipedBody.addBox(-2.0, -1.0, -2.0, 12, 5, 10, var2); bipedBody.addBox(-4.0, -16.0, 2.0, 20, 15, -15, var2); var bipedHead = model.getPart("head").clear().setTextureOffset(56, 0); bipedBody.addBox(-1.0, -27.0, -3.0, 10, 12, 10, var2); bipedBody.addBox(2.6, -18.8, -4.5, 3, -13, 20, var2); var bipedRightArm = model.getPart("rightArm").clear().setTextureOffset(56, 0); bipedRightArm.addBox(-7.0, -16.0, -2.0, 6, 42, 8, var2); var bipedLeftArm = model.getPart("leftArm").clear().setTextureOffset(56, 0); bipedLeftArm.addBox(10.0, -16.0, -2.0, 6, 42, 8, var2); var bipedRightLeg = model.getPart("rightLeg").clear().setTextureOffset(56, 0); bipedRightLeg.addBox(8.0, -8.0, -1.0, 6.5, 20, 9, var2); var bipedLeftLeg = model.getPart("leftLeg").clear().setTextureOffset(56, 0); bipedLeftLeg.addBox(-6, -8.0, -1.0, 6.5, 20, 9, var2); } var golemRenderer = Renderer.createHumanoidRenderer(); addGolemToRenderer(golemRenderer); var block1 = 49; var block2 = 49; function useItem(x, y, z, itemId, blockId) { if(itemId==396&&blockId) { clientMessage("Forgotten King:You dare fighting me, little Kid. Then this was your last mistake."); var king = Level.spawnMob (x, y+1, z, 35, "mob/king.png"); Entity.setHealth(king, 2000); Entity.setRenderType(king,3); Entity.setCarriedItem (king, 392, 1, 0); Entity.setNameTag(king, "Forgotten King[SecretBOSS]"); Player.addItemInventory(396, -1); } if(itemId==395&&blockId) { clientMessage("Forgotten King: You are right to run away, Little Kid......"); Player.addItemInventory(395, -1); Player.addItemInventory(396, -1); } if(itemId==391&&blockId) { clientMessage("Forgotten King: What are you doing here little Kid.I've killed hundreds of warriors which were stronger than you.Do you want to fight me? Choose your Answer....."); Player.addItemInventory(395, +1); Player.addItemInventory(396, +1); } if(itemId==393&&blockId) { var dpet = Level.spawnMob(x, y + 1, z, 14,"mob/enderman.png"); Entity.setHealth(dpet, 500); Entity.setRenderType(dpet, DraptorRenderer .renderType); Entity.setNameTag(dpet, "Ender Raptor[Pet]"); } if(itemId&&blockId==203) { clientMessage( "Tap this with Infinity Blade"); } if(itemId==384&&blockId) { clientMessage( "Friday:Dear Diary, the Villigers in the Forest think i'm crazy, because I want to fight the army of Pigman.....Monday:I think the are searching for me but I have to find the grave of the old Deathless Pig Zombie King....Saturday: This is are my last words: Please anyone who will find this diary, find the long hidden grave of the Deathless King."); } if(itemId==438&&blockId==204) { clientMessage( "The Stick and the Bell are now Connected."); Player.addItemInventory(380, +1); setTile(x, y, z, 0); } if(itemId==381&&blockId) { clientMessage( "A long time ago the army of the Deathless Pigman Zombie King invaded this land. The Villagers have been forced to hide in the forest.His grave is hidden deep in the forest"); } if(itemId==382&&blockId) { clientMessage( "This must be the Portal to the Pig Man World. It looks broken. I must kill every pig Man in this forest."); } if(itemId==375&&blockId) { var fallen = Level.spawnMob (x, y, z, 35, "mob/fallen.png"); Entity.setHealth(fallen, 9000); Entity.setRenderType(fallen,3); Entity.setNameTag(fallen, "Fallen Hero[SecretBOSS]"); } if(itemId&&blockId==204) { clientMessage( "A Hint: It looks like an very old Bell.I think it could be removed if i tap with an living Bio-Mass Stick"); } if(itemId==440&&blockId==203) { clientMessage("Die now weak human. No you are fighting a Deathless.Once I ruled over this land together with a Hero who now is called the fallen.But he betrayed me and burried me in this grave."); clientMessage("Majula: Oh no, young Adventurer, you have awekened the long forgotten Deathless King of Zombie Pigmen.One of the Hidden Boss Fights."); Player.addItemInventory(508, +1); var death = Level.spawnMob (x, y, z, 35, "mob/deathless.png"); Entity.setHealth(death, 1000); Entity.setRenderType(death,3); Entity.setCarriedItem (death, 440, 1, 0); Entity.setNameTag(guard, "Deathless Pig Zombie King[SecretBOSS]"); } if(itemId&&blockId==205) { clientMessage("Majula: You have called the three tower Guards.One of the secret boss Fights."); var guard = Level.spawnMob (x, y, z, 36, "mob/deathless.png"); Entity.setHealth(guard, 480); Entity.setCarriedItem (guard, 199, 1, 0); Entity.setNameTag(guard, "Tower Guard[SecretBOSS]"); var guard = Level.spawnMob (x, y, z, 36, "mob/deathless.png"); Entity.setCarriedItem (guard, 199, 1, 0); Entity.setNameTag(guard, "TowerGuard[SecretBOSS]"); var guard = Level.spawnMob (x, y, z, 36, "mob/deathless.png"); Entity.setHealth(guard, 480); Entity.setCarriedItem (guard, 199, 1, 0); Entity.setNameTag(guard, "Tower Guard[SecretBOSS]"); setTile(x, y, z, 0); } if(itemId==206&&blockId) { preventDefault(); } if(itemId==207&&blockId) { preventDefault(); } if(itemId==202&&blockId) { preventDefault(); } if(itemId==201&&blockId) { preventDefault(); } if(itemId==394&&blockId) { Player.addItemInventory(394, -1); Player.addItemInventory(199, +1); } if(itemId==511&&blockId) { Player.addItemInventory(511, -1); Player.addItemInventory(510, +1); } if(itemId==510&&blockId) { Player.addItemInventory(511, +1); Player.addItemInventory(510, -1); } if(itemId==509&&blockId) { Player.addItemInventory(385, +1); Player.addItemInventory(509, -1); } if(itemId==385&&blockId) { Player.addItemInventory(385, -1); Player.addItemInventory(509, +1); } if(itemId==210&&blockId) { preventDefault(); } if(itemId==209&&blockId) { preventDefault(); } if(itemId==208&&blockId) { preventDefault(); } if(itemId==199&&blockId) { preventDefault(); } if(itemId==450&&blockId==194) { clientMessage( "????: Welcome young Adventurer this jurney won't be easy but I will guide you through it. My name is Majula.And I hope you will help me get rid of the Zombie Pigman Invasion." ); setTile(x, y, z, 195); } if(itemId==450&&blockId==195) { clientMessage( "Majula: The first Boss you should fight is the Monking. He has 500 Hitpoints but his attacks are weak." ); clientMessage("Majula: You willget a Soul by killing him. Tap it on this Block for getting the Monking Sword."); setTile(x, y, z, 196); } if(itemId==450&&blockId==196) { clientMessage( "Majula: Im proud of you. But there are more Bosses to defeat. Take time to prepair yourself for the fight against the Infected PigZombie King and his Army. I'll give you one hint: the King is the only one, holding a diamond sword. " ); setTile(x, y, z, 197); } if(itemId==450&&blockId==197) { clientMessage( "Majula: You have to take down the horde of Ender Dragon Raptors . They are smart and very strong."); setTile(x, y, z, 198); } if(itemId==450&&blockId==198) { clientMessage( "Majula:Young Adventurer it looks like someone opened the gate to Hell.You have to stop the escaped Biests.Start with the Terrifying Minotaurus.WIP "); setTile(x, y, z, 202); } if(itemId==450&&blockId==202) { clientMessage( "Majula:Its unbelivable that you have taken down this Biest.But the next One is a creature, which had hunted Heros like you since the Beginning of Time.WIP"); setTile(x, y, z, 203); } if(itemId==390&&blockId) { clientMessage( "Forgotten King: Now nobody nows who I am. But a long time ago I was the King of these land. I have created many legendary Weapons and ruled over hundreds of soldiers. But then a Hero ,whos name is now forgotten like me, has beaten me and thought that he had killed me but now I am forced to hide under the Earth.But one day I will get my revenge."); } if(itemId==450&&blockId==203) { clientMessage( "Majula:Gradulations young Hero."); setTile(x, y, z, 194); } if(itemId==0&&blockId) { Entity.setMobSkin(Player.getEntity(), "mob/char.png"); Player.addItemInventory(435, +64); } if(itemId==485&&blockId) { clientMessage( "Oh no, the Hunter of Heros is here.") Player.addItemInventory(483, +1); Player.addItemInventory(485, -1); } if(itemId==484&&blockId) { clientMessage( "Hide Yourself young Hero, the Minotaurus has invaded your World") Player.addItemInventory(482, +1); Player.addItemInventory(484, -1); } if(itemId==378){ Player.setArmorSlot(0, 378, 0); Player.setHealth(Entity.getHealth(Player.getEntity()) +600); Entity.setMobSkin(Player.getEntity(), "mob/kingar.png"); Player.addItemInventory(378, -1); } if(itemId==447){ Player.setArmorSlot(0, 447, 0); Player.setHealth(Entity.getHealth(Player.getEntity()) +200); Entity.setMobSkin(Player.getEntity(), "mob/dslayer.png"); Player.addItemInventory(447, -1); } if(itemId==508){ Player.setArmorSlot(0, 508, 0); Entity.setMobSkin(Player.getEntity(), "mob/deathless.png"); Player.setHealth(Entity.getHealth(Player.getEntity()) +400); Player.addItemInventory(508, -1); } if(itemId==402&&blockId) { setPosition(getPlayerEnt(), x, y+3, z); clientMessage( "teleported Player to Position" ); } if(itemId==405&&blockId) { setPosition(getPlayerEnt(), x, y+2, z-6); clientMessage( "Shadowstep performed" ); } if(itemId==407&&blockId) { Player.setHealth(Entity.getHealth(Player.getEntity()) -19); Player.addItemInventory(407, -1); Player.addItemInventory(408, +1); } if(itemId==482&&blockId) { Player.addItemInventory(481, +1); Player.addItemInventory(482, -1); } if(itemId==483&&blockId) { Player.addItemInventory(480, +1); Player.addItemInventory(483, -1); } if(itemId==445&&blockId) { Player.addItemInventory(401, +1); Player.addItemInventory(445, -1); } if(itemId==446&&blockId) { Player.addItemInventory(451, +1); Player.addItemInventory(446, -1); } if(itemId==444&&blockId) { Player.addItemInventory(447, +1); Player.addItemInventory(503, +1); Player.addItemInventory(444, -1); } if(itemId==0&&blockId==191) { Player.setHealth(20); } if(itemId==418&&blockId) { Player.setHealth(Entity.getHealth(Player.getEntity()) -10); } if(itemId==449&&blockId) { Player.setHealth(20); Player.addItemInventory(449, -1); } if(itemId==442&&blockId ) { clientMessage("Young Adventurer, run they are coming"); var Dg = Level.spawnMob(x, y + 1, z, 35,"mob/enderman.png"); Player.addItemInventory(444, +1); Entity.setHealth(Dg,500); Entity.setRot(Dg, 100, 1000) Entity.setRenderType(spider, DraptorRenderer .renderType); Entity.setRenderType(Dg, DraptorRenderer .renderType); var Dg = Level.spawnMob(x, y + 1, z, 35,"mob/enderman.png"); Player.addItemInventory(444, +1); Entity.setHealth(Dg,500); Entity.setRot(Dg, 100, 1000) Entity.setRenderType(Dg, DraptorRenderer .renderType); var Dg = Level.spawnMob(x, y + 1, z, 35,"mob/enderman.png"); Player.addItemInventory(444, +1); Entity.setHealth(Dg,500); Entity.setRot(Dg, 100, 1000) Entity.setRenderType(Dg, DraptorRenderer .renderType); var Dg = Level.spawnMob(x, y + 1, z, 35,"mob/enderman.png"); Player.addItemInventory(444, +1); Entity.setHealth(Dg,500); Entity.setRot(Dg, 100, 1000) Entity.setRenderType(Dg, DraptorRenderer .renderType); var Dg = Level.spawnMob(x, y-1, z, 35,"mob/enderman.png" ); Entity.setRot(spider, 100, 1000); Entity.setHealth(spider,500); Entity.setRenderType(Dg, DraptorRenderer .renderType); Player.addItemInventory(442, -1); } if(itemId==425&&blockId ) { clientMessage("Runnnn dump little weakling or I will crush you!!!!!"); Player.addItemInventory(445, +1); var spider = Level.spawnMob(x, y-1, z, 35,"mob/wolf.png" ); Entity.setHealth(spider,500); Entity.setRenderType(spider, golemRenderer .renderType); Entity.setNameTag(spider, "Monking[BOSS]"); Level.destroyBlock(x,y,z,false); setTile(x,y-1,z,0); Level.destroyBlock(x,y-2,z,false); setTile(x+1,y-1,z,0); setTile(x-1,y-1,z,0); Player.addItemInventory(425, -1); } if(itemId==431) { clientMessage("You have come far, but now you have to take it up with my army"); Player.addItemInventory(446, +1); var Inf = Level.spawnMob (x, y, z, 36, "mob/skeleton.png"); Entity.setHealth(Inf, 300); Entity.setRenderType(Inf,3); Entity.setCarriedItem (Inf, 276, 1, 0); Entity.setNameTag(Inf, "Infected PigZombie King[BOSS]"); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); addItemInventory(431, -1); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); addItemInventory(431, -1); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); var min = Level.spawnMob (x, y, z, 36, "mob/Zombie.png"); Entity.setHealth(min, 120); Entity.setRenderType(min,3); Entity.setCarriedItem (min, 267, 1, 0); addItemInventory(431, -1); } } var spider = 35 var king = 35; function attackHook(attacker,victim) { if(Player.getCarriedItem()==400) { Entity.setHealth(victim,Entity.getHealth(victim) -20); } if(Player.getCarriedItem()==401) { Entity.setHealth(victim,Entity.getHealth(victim) -26); } if(Player.getCarriedItem()==402) { Entity.setHealth(victim,Entity.getHealth(victim) -5); } if(Player.getCarriedItem()==403) { Entity.setHealth(victim,Entity.getHealth(victim) -21); } if(Player.getCarriedItem()==404) { Entity.setHealth(victim,Entity.getHealth(victim) -22); } if(Player.getCarriedItem()==405) { Entity.setHealth(victim,Entity.getHealth(victim) -17); } if(Player.getCarriedItem()==406) { Entity.setHealth(victim,Entity.getHealth(victim) -16); } if(Player.getCarriedItem()==407) { Entity.setHealth(victim,Entity.getHealth(victim) -1); Player.addItemInventory(407, -1); Player.addItemInventory(409, +1); } if(Player.getCarriedItem()==410) { Entity.setHealth(victim,Entity.getHealth(victim) -0); Player.addItemInventory(410, -1); Player.addItemInventory(411, +1); } if(Player.getCarriedItem()==411) { Entity.setHealth(victim,Entity.getHealth(victim) -0); Player.addItemInventory(411, -1); Player.addItemInventory(412, +1); } if(Player.getCarriedItem()==412) { Entity.setHealth(victim,Entity.getHealth(victim) -0); Player.addItemInventory(412, -1); Player.addItemInventory(413, +1); } if(Player.getCarriedItem()==414) { Entity.setHealth(victim,Entity.getHealth(victim) -13); } if(Player.getCarriedItem()==420) { Entity.setHealth(victim,Entity.getHealth(victim) -23); Entity.setHealth(attacker,Entity.getHealth(attacker) +4); } if(Player.getCarriedItem()==422) { Entity.setHealth(victim,Entity.getHealth(victim) -27); Entity.setHealth(attacker,Entity.getHealth(attacker) -1); Player.addItemInventory(415, +1); } if(Player.getCarriedItem()==426) { Entity.setHealth(victim,Entity.getHealth(victim) -16); } if(Player.getCarriedItem()==430) { Entity.setHealth(victim,Entity.getHealth(victim) -19); } if(Player.getCarriedItem()==434) { Entity.setHealth(victim,Entity.getHealth(victim) -5); Player.addItemInventory(433, +1); } if(Player.getCarriedItem()==436) { Entity.setHealth(victim,Entity.getHealth(victim) -28); Player.addItemInventory(433, +2); } if(Player.getCarriedItem()==437) { Entity.setHealth(victim,Entity.getHealth(victim) -28); Player.addItemInventory(433, +2); } if(Player.getCarriedItem()==440) { Entity.setHealth(victim,Entity.getHealth(victim) -40); Player.addItemInventory(433, +8); } if(Player.getCarriedItem()==443) { Entity.setHealth(victim,Entity.getHealth(victim) -36); Entity.setFireTicks(victim, 3); } if(Player.getCarriedItem()==451) { Entity.setHealth(victim,Entity.getHealth(victim) -28); } if(Player.getCarriedItem()==199) { Entity.setHealth(victim,Entity.getHealth(victim) -40); } if(Player.getCarriedItem()==452) { Entity.setHealth(victim,Entity.getHealth(victim) -7); Entity.setFireTicks(victim, 40); Player.addItemInventory(276, +1); Player.addItemInventory(452, -1); } if(Player.getCarriedItem()==453) { Entity.setHealth(victim,Entity.getHealth(victim) -4); Entity.setFireTicks(victim, 40); Player.addItemInventory(283, +1); Player.addItemInventory(453, -1); } if(Player.getCarriedItem()==454) { Entity.setHealth(victim,Entity.getHealth(victim) -6); Entity.setFireTicks(victim, 40); Player.addItemInventory(267, +1); Player.addItemInventory(454, -1); } if(Player.getCarriedItem()==379) { Entity.setHealth(victim, 100); Entity.setMobSkin(victim, "mob/enderman.png"); Entity.setRot(victim, 100, 1000) Entity.setAnimalAge(victim, 50); Entity.setNameTag(victim, "Ender Raptor geared[Pet]"); Player.addItemInventory(379, -1); } if(Player.getCarriedItem()==455) { Entity.setHealth(victim,Entity.getHealth(victim) -5); Entity.setFireTicks(victim, 40); Player.addItemInventory(272, +1); Player.addItemInventory(455, -1); } if(Player.getCarriedItem()==456) { Entity.setHealth(victim,Entity.getHealth(victim) -6); clientMessage("The Wooden Sword turned into ash, but the Damage was increased"); Entity.setFireTicks(victim, 40); Player.addItemInventory(456, -1); } if(Player.getCarriedItem()==459) { Entity.setHealth(victim,Entity.getHealth(victim) -14); Entity.setFireTicks(victim, 40); Player.addItemInventory(414, +1); Player.addItemInventory(459, -1); } if(Player.getCarriedItem()==460) { Entity.setHealth(victim,Entity.getHealth(victim) -16); Entity.setFireTicks(victim, 40); Player.addItemInventory(426, +1); Player.addItemInventory(460, -1); } if(Player.getCarriedItem()==462) { Entity.setHealth(victim,Entity.getHealth(victim) -9); Player.addItemInventory(276, +1); Player.addItemInventory(462, -1); } if(Player.getCarriedItem()==463) { clientMessage("The Damage Buff was increased because your weapon is made out of metal"); Entity.setHealth(victim,Entity.getHealth(victim) -7); Player.addItemInventory(283, +1); Player.addItemInventory(463, -1); } if(Player.getCarriedItem()==464) { clientMessage("The Damage Buff was increased because your weapon is made out of metal"); Entity.setHealth(victim,Entity.getHealth(victim) -9); Player.addItemInventory(267, +1); Player.addItemInventory(464, -1); } if(Player.getCarriedItem()==465) { clientMessage("The Damage Buff was decreased because your weapon is made out of stone"); Entity.setHealth(victim,Entity.getHealth(victim) -6.5); Player.addItemInventory(262, +1); Player.addItemInventory(465, -1); } if(Player.getCarriedItem()==466) { Entity.setHealth(victim,Entity.getHealth(victim) -6); Player.addItemInventory(268, +1); Player.addItemInventory(466, -1); } if(Player.getCarriedItem()==467) { Entity.setHealth(victim,Entity.getHealth(victim) -24); Player.addItemInventory(400, +1); Player.addItemInventory(467, -1); } if(Player.getCarriedItem()==468) { clientMessage("The Damage Buff was increased because your weapon is made out of metal"); Entity.setHealth(victim,Entity.getHealth(victim) -18); Player.addItemInventory(414, +1); Player.addItemInventory(468, -1); } if(Player.getCarriedItem()==469) { Entity.setHealth(victim,Entity.getHealth(victim) -9); } if(Player.getCarriedItem()==470) { Entity.setHealth(victim,Entity.getHealth(victim) -18); Player.addItemInventory(426, +1); Player.addItemInventory(470, -1); } if(Player.getCarriedItem()==471) { Entity.setHealth(victim,Entity.getHealth(victim) -18); } if(Player.getCarriedItem()==472) { Entity.setHealth(victim,Entity.getHealth(victim) -18); Entity.setFireTicks(victim, 40); Player.addItemInventory(471, +1); Player.addItemInventory(472, -1); } if(Player.getCarriedItem()==473) { Entity.setHealth(victim,Entity.getHealth(victim) -22); clientMessage("The Damage Buff was increased because your weapon is made out of metal"); Player.addItemInventory(471, +1); Player.addItemInventory(473, -1); } if(Player.getCarriedItem()==474) { Entity.setHealth(victim,Entity.getHealth(victim) -9); Entity.setFireTicks(victim, 40); Player.addItemInventory(469, +1); Player.addItemInventory(474, -1); } if(Player.getCarriedItem()==475) { Entity.setHealth(victim,Entity.getHealth(victim) -13); clientMessage("The Damage Buff was increased because your weapon is made out of metal"); Player.addItemInventory(469, +1); Player.addItemInventory(475, -1); } if(Player.getCarriedItem()==476) { Entity.setHealth(victim,Entity.getHealth(victim) -18); } if(Player.getCarriedItem()==477) { Entity.setHealth(victim,Entity.getHealth(victim) -18); Entity.setFireTicks(victim, 40); Player.addItemInventory(476, +1); Player.addItemInventory(477, -1); } if(Player.getCarriedItem()==478) { Entity.setHealth(victim,Entity.getHealth(victim) -20); Player.addItemInventory(476, +1); Player.addItemInventory(478, -1); } if(Player.getCarriedItem()==479) { Entity.setHealth(victim,Entity.getHealth(victim) -26); } if(Player.getCarriedItem()==480) { Entity.setHealth(victim,Entity.getHealth(victim) -32); } if(Player.getCarriedItem()==481) { Entity.setHealth(victim,Entity.getHealth(victim) -32); } if(Player.getCarriedItem()==486) { Entity.setHealth(victim,Entity.getHealth(victim) -34); Entity.setFireTicks(victim, 15); } if(Player.getCarriedItem()==487) { Entity.setHealth(victim,Entity.getHealth(victim) -30); Entity.setFireTicks(victim, 9); } if(Player.getCarriedItem()==488) { Entity.setHealth(victim,Entity.getHealth(victim) -34); Entity.setFireTicks(victim, 9); } if(Player.getCarriedItem()==489) { Entity.setHealth(victim,Entity.getHealth(victim) -38); Entity.setFireTicks(victim, 9); } if(Player.getCarriedItem()==490) { Entity.setHealth(victim,Entity.getHealth(victim) -43); Entity.setFireTicks(victim, 9); } if(Player.getCarriedItem()==491) { Entity.setHealth(victim,Entity.getHealth(victim) -48); Entity.setFireTicks(victim, 9); } if(Player.getCarriedItem()==201) { Entity.setHealth(victim,Entity.getHealth(victim) -45); } if(Player.getCarriedItem()==202) { Entity.setHealth(victim,Entity.getHealth(victim) -50); } if(Player.getCarriedItem()==492) { Entity.setHealth(victim,Entity.getHealth(victim) -33); } if(Player.getCarriedItem()==493) { Entity.setHealth(victim,Entity.getHealth(victim) -35); } if(Player.getCarriedItem()==494) { Entity.setHealth(victim,Entity.getHealth(victim) -34); } if(Player.getCarriedItem()==495) { Entity.setHealth(victim,Entity.getHealth(victim) -35); } if(Player.getCarriedItem()==496) { Entity.setHealth(victim,Entity.getHealth(victim) -37); } if(Player.getCarriedItem()==497) { Entity.setHealth(victim,Entity.getHealth(victim) -42); } if(Player.getCarriedItem()==498) { Entity.setHealth(victim,Entity.getHealth(victim) -37); } if(Player.getCarriedItem()==499) { Entity.setHealth(victim,Entity.getHealth(victim) -42); } if(Player.getCarriedItem()==500) { Entity.setHealth(victim,Entity.getHealth(victim) -28); } if(Player.getCarriedItem()==503) { Entity.setHealth(victim,Entity.getHealth(victim) -38); Entity.setFireTicks(victim, 7); } if(Player.getCarriedItem()==504) { Entity.setHealth(victim,Entity.getHealth(victim) -42); Entity.setFireTicks(victim, 7); } if(Player.getCarriedItem()==505) { Entity.setHealth(victim,Entity.getHealth(victim) -46); Entity.setFireTicks(victim, 7); } if(Player.getCarriedItem()==506) { Entity.setHealth(victim,Entity.getHealth(victim) -50); Entity.setFireTicks(victim, 7); } if(Player.getCarriedItem()==507) { Entity.setHealth(victim,Entity.getHealth(victim) -30); Entity.setFireTicks(victim, 40); } if(Player.getCarriedItem()==380) { Entity.setHealth(victim,Entity.getHealth(victim) -34); } if(Player.getCarriedItem()==206) { Entity.setHealth(victim,Entity.getHealth(victim) -750); } if(Player.getCarriedItem()==385) { Entity.setHealth(victim,Entity.getHealth(victim) -30); } if(Player.getCarriedItem()==510) { Entity.setHealth(victim,Entity.getHealth(victim) -30); } if(Player.getCarriedItem()==392) { Entity.setHealth(victim,Entity.getHealth(victim) -50); } if(Player.getCarriedItem()==207) { Entity.setHealth(victim,Entity.getHealth(victim) -46); } if(Player.getCarriedItem()==397) { Entity.setHealth(victim,Entity.getHealth(victim) -40); } if(Player.getCarriedItem()==208) { Entity.setHealth(victim,Entity.getHealth(victim) -1000); } if(Player.getCarriedItem()==209) { Entity.setHealth(victim,Entity.getHealth(victim) -550); Entity.setFireTicks(victim, 40); } if(Player.getCarriedItem()==210) { Entity.setHealth(victim,Entity.getHealth(victim) -650); Entity.setFireTicks(victim, 40); } if(Entity.getEntityTypeId(victim)==king) { Entity.setRenderType(king,3); Entity.setMobSkin(king, "mob/kingar.png"); } if(Player.getCarriedItem()==376) { Entity.setHealth(victim,Entity.getHealth(victim) -504); } if(Player.getCarriedItem()==374) { Entity.setHealth(victim,Entity.getHealth(victim) -74); } if(Player.getCarriedItem()==373) { Entity.setHealth(victim,Entity.getHealth(victim) -304); } if(Player.getCarriedItem()==374) { Entity.setHealth(victim,Entity.getHealth(victim) -77); } if(Player.getCarriedItem()==374) { Entity.setHealth(victim,Entity.getHealth(victim) -80); } if(Player.getCarriedItem()==471) { Entity.setHealth(victim,Entity.getHealth(victim) -40); Entity.setFireTicks(victim, 15); } if(Player.getCarriedItem()==470) { Entity.setHealth(victim,Entity.getHealth(victim) -47); Entity.setFireTicks(victim, 15); } if(Player.getCarriedItem()==369) { Entity.setHealth(victim,Entity.getHealth(victim) -44); } if(Player.getCarriedItem()==368) { Entity.setHealth(victim,Entity.getHealth(victim) -48); } }
ankit13jain /
The project is a car rental system implemented in ruby on rails having the functionalities like search, reserve, checkout, return based on input and filters provided by user. Core ruby on rails features of cron jobs, task scheduler, User Mailer, scaffolding are used. Several corner scenarios are handled, as mentioned in the Readme, to ensure the system flow is well-defined and robust