mr:tamahawk_item
Table of Contents
Tamahawk Item - Code References
Java Classes
- Tamahawk.java - Base throwing axe implementation
- GnollTamahawk.java - Gnoll variant implementation
- ItemFactory.java - Registers Tamahawk class for generation
Tamahawk.java Full Implementation
package com.watabou.pixeldungeon.items.weapon.missiles; import com.watabou.pixeldungeon.actors.Char; import com.watabou.pixeldungeon.actors.buffs.Bleeding; import com.watabou.pixeldungeon.actors.buffs.Buff; import com.watabou.pixeldungeon.items.Item; import com.watabou.pixeldungeon.sprites.ItemSpriteSheet; import com.watabou.utils.Random; public class Tamahawk extends MissileWeapon { public Tamahawk() { this( 1 ); } public Tamahawk( int number ) { super(); image = ItemSpriteSheet.TOMAHAWK; setSTR(17); MIN = 4; MAX = 20; quantity(number); } @Override public void attackProc(Char attacker, Char defender, int damage ) { super.attackProc( attacker, defender, damage ); Buff.affect( defender, Bleeding.class ).level( damage ); } @Override public Item random() { quantity(Random.Int( 5, 12 )); return this; } @Override public int price() { return 20 * quantity(); } @Override public String getAttackAnimationClass() { return SWORD_ATTACK; } @Override public String getVisualName() { return "Tomahawk"; } }
GnollTamahawk.java Full Implementation
package com.nyrds.pixeldungeon.items.common; import androidx.annotation.Keep; import com.nyrds.Packable; import com.watabou.pixeldungeon.actors.Char; import com.watabou.pixeldungeon.items.weapon.missiles.Tamahawk; import com.watabou.utils.Bundle; import com.watabou.utils.Random; import org.jetbrains.annotations.NotNull; public class GnollTamahawk extends Tamahawk { @Packable public int imageIndex; @Keep public GnollTamahawk() { super(); } @Override public void attackProc(Char attacker, Char defender, int damage) { super.attackProc(attacker, defender, damage); // Additional gnoll-specific effects could go here } }
ItemFactory Registration
In ItemFactory.java:
- Line 197: `import com.watabou.pixeldungeon.items.weapon.missiles.Tamahawk;`
- Line 347: `registerItemClass(Tamahawk.class);` - Registers Tamahawk for procedural generation
JSON Configuration
- No dedicated JSON configuration file found for Tamahawk
- Check `RemixedDungeon/src/main/assets/itemsDesc/` for potential item descriptions
- Sprite configuration may exist in `RemixedDungeon/src/main/assets/spritesDesc/tamahawk.json`
String Resources
<string name="Tamahawk_Name">tomahawk</string> <string name="Tamahawk_Info">While this throwing axe is not that heavy, yet still it requires significant strength to be used effectively.</string> <string name="Tamahawk_Gender">masculine</string>
Lua Scripts
This entity is implemented in Java, no Lua script exists for base Tamahawk functionality.
Usage in Game Code
- Challenges.java: Referenced in NO_HEALING challenge category (as PotionOfHealing, not directly Tamahawk)
- ShopPainter.java: May appear in shop inventories
- Mob loot tables: Various mobs can drop Tamahawk (Bat, Scorpio, SpiderNest, etc.)
- Alchemy: Not directly craftable via alchemy recipes
Related mr Entities
- Gnoll Tamahawk (Item) - Gnoll variant with additional properties
- Javelin - Similar throwing weapon
- Shuriken - Similar throwing weapon
- Boomerang - Similar returning weapon
Item Properties
- Type: MissileWeapon (throwing axe)
- Strength Requirement: 17 STR
- Damage: 4-20 (scales with quantity)
- Price: 20 gold per unit
- Special Effect: Applies Bleeding on hit (damage = hit damage)
- Quantity: 5-12 when randomly generated
- Sprite: ItemSpriteSheet.TOMAHAWK
- Attack Animation: SWORD_ATTACK
- Visual Name: “Tomahawk”
mr/tamahawk_item.txt · Last modified: by 127.0.0.1

