User Tools

Site Tools


mr:ring_of_stone_walking_item

Ring of Stone Walking Item - Code References

This page contains raw code references and configuration excerpts for the Ring of Stone Walking item entity.

Entity Kind

  • getEntityKind() value: StoneWalking

Java Implementation

Java Class Content

package com.watabou.pixeldungeon.items.rings;
 
import com.nyrds.pixeldungeon.ml.R;
import com.nyrds.platform.util.StringsManager;
import com.watabou.pixeldungeon.Badges;
import com.watabou.pixeldungeon.Dungeon;
import com.watabou.pixeldungeon.ResultDescriptions;
import com.watabou.pixeldungeon.actors.hero.Doom;
import com.watabou.pixeldungeon.items.bags.Bag;
import com.watabou.pixeldungeon.sprites.ItemSpriteSheet;
import com.watabou.pixeldungeon.ui.BuffIndicator;
import com.watabou.pixeldungeon.utils.GLog;
import com.watabou.pixeldungeon.utils.Utils;
 
public class RingOfStoneWalking extends Artifact{
 
	public RingOfStoneWalking() {
		image = ItemSpriteSheet.RING_OF_STONE_WALKING;
		identify();
	}
 
	@Override
	public ArtifactBuff buff( ) {
		return new StoneWalking();
	}
 
	public static class StoneWalking extends ArtifactBuff implements Doom {
		@Override
		public int icon() {
			return BuffIndicator.STONEBLOOD;
		}
 
		@Override
		public String name() {
            return StringsManager.getVar(R.string.StoneBloodBuff_Name);
        }
 
		@Override
		public String desc() {
            return StringsManager.getVar(R.string.StoneBloodBuff_Info);
        }
		@Override
		public void onHeroDeath() {
			Badges.validateDeathInStone();
 
			Dungeon.fail( Utils.format( ResultDescriptions.getDescription(ResultDescriptions.Reason.IMMURED), Dungeon.depth ) );
            GLog.n(StringsManager.getVar(R.string.RingOfStoneWalking_ImmuredInStone));
 
		}
	}
 
	@Override
	public String bag() {
		return Bag.KEYRING;
	}
}

Key Properties from Code

  • Type: Artifact
  • Image: ItemSpriteSheet.RING_OF_STONE_WALKING
  • Auto-identified: Yes (identify() called in constructor)
  • Bag Type: Keyring
  • Buff Class: StoneWalking
  • Buff Icon: BuffIndicator.STONEBLOOD
  • Death Effect: Implements Doom interface - triggers “immured in stone” death

String Resources

<string name="RingOfStoneWalking_Name">Ring of Stone Blood</string>
<string name="RingOfStoneWalking_Info">This strange ring is made of some sturdy stone. What you first thought was a ruby is actually liquid blood being held in place! Inside is an arrow pointing at what appears to be a wall, along with a broken heart... What might it do?</string>
<string name="RingOfStoneWalking_ImmuredInStone"> You have been immured in stone. Forever.</string>
<string name="StoneBloodBuff_Name">Stone Blood</string>
<string name="StoneBloodBuff_Info">The blood turns to stone which merges with nearby walls, making traversing them much easier, but at what cost</string>

JSON Configuration

This entity does not use JSON configuration.

Lua Scripts

This entity is implemented in Java, no Lua script exists.

Code Behavior

  • Extends Artifact class
  • Provides StoneWalking buff when equipped
  • StoneWalking buff allows walking through walls
  • Implements Doom interface for special death handling
  • Triggers “Death in Stone” badge on death
  • Displays special failure message when dying while using the ring
mr/ring_of_stone_walking_item.txt · Last modified: by 127.0.0.1