v0.3.0: removed wand of flock (moved sheed to npcs package)
This commit is contained in:
parent
0b15d8caac
commit
60ff641bc5
|
@ -0,0 +1,49 @@
|
||||||
|
package com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs;
|
||||||
|
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.SheepSprite;
|
||||||
|
import com.watabou.utils.Random;
|
||||||
|
|
||||||
|
public class Sheep extends NPC {
|
||||||
|
|
||||||
|
private static final String[] QUOTES = {"Baa!", "Baa?", "Baa.", "Baa..."};
|
||||||
|
|
||||||
|
{
|
||||||
|
name = "sheep";
|
||||||
|
spriteClass = SheepSprite.class;
|
||||||
|
}
|
||||||
|
|
||||||
|
public float lifespan;
|
||||||
|
|
||||||
|
private boolean initialized = false;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected boolean act() {
|
||||||
|
if (initialized) {
|
||||||
|
HP = 0;
|
||||||
|
|
||||||
|
destroy();
|
||||||
|
sprite.die();
|
||||||
|
|
||||||
|
} else {
|
||||||
|
initialized = true;
|
||||||
|
spend( lifespan + Random.Float(2) );
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void damage( int dmg, Object src ) {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String description() {
|
||||||
|
return
|
||||||
|
"This is a magic sheep. What's so magical about it? You can't kill it. " +
|
||||||
|
"It will stand there until it magcially fades away, all the while chewing cud with a blank stare.";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void interact() {
|
||||||
|
yell( Random.element( QUOTES ) );
|
||||||
|
}
|
||||||
|
}
|
|
@ -17,6 +17,7 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Frost;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mimic;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mimic;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs.Sheep;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.CellEmitter;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.CellEmitter;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Flare;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.Flare;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.MagicMissile;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.MagicMissile;
|
||||||
|
@ -265,7 +266,7 @@ public class CursedWand {
|
||||||
public void call() {
|
public void call() {
|
||||||
Char ch = Actor.findChar( bolt.collisionPos );
|
Char ch = Actor.findChar( bolt.collisionPos );
|
||||||
if (ch != null && ch != user){
|
if (ch != null && ch != user){
|
||||||
WandOfFlock.Sheep sheep = new WandOfFlock.Sheep();
|
Sheep sheep = new Sheep();
|
||||||
sheep.lifespan = 10;
|
sheep.lifespan = 10;
|
||||||
sheep.pos = ch.pos;
|
sheep.pos = ch.pos;
|
||||||
ch.sprite.killAndErase();
|
ch.sprite.killAndErase();
|
||||||
|
|
|
@ -1,86 +0,0 @@
|
||||||
/*
|
|
||||||
* Pixel Dungeon
|
|
||||||
* Copyright (C) 2012-2014 Oleg Dolya
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>
|
|
||||||
*/
|
|
||||||
package com.shatteredpixel.shatteredpixeldungeon.items.wands;
|
|
||||||
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs.NPC;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MagesStaff;
|
|
||||||
import com.watabou.noosa.audio.Sample;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.Actor;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.CellEmitter;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.MagicMissile;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Level;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.mechanics.Ballistica;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.GameScene;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.sprites.SheepSprite;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.utils.BArray;
|
|
||||||
import com.watabou.utils.Callback;
|
|
||||||
import com.watabou.utils.PathFinder;
|
|
||||||
import com.watabou.utils.Random;
|
|
||||||
|
|
||||||
//TODO: pull sheep out of here, and delete
|
|
||||||
public abstract class WandOfFlock extends Wand {
|
|
||||||
|
|
||||||
public static class Sheep extends NPC {
|
|
||||||
|
|
||||||
private static final String[] QUOTES = {"Baa!", "Baa?", "Baa.", "Baa..."};
|
|
||||||
|
|
||||||
{
|
|
||||||
name = "sheep";
|
|
||||||
spriteClass = SheepSprite.class;
|
|
||||||
}
|
|
||||||
|
|
||||||
public float lifespan;
|
|
||||||
|
|
||||||
private boolean initialized = false;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected boolean act() {
|
|
||||||
if (initialized) {
|
|
||||||
HP = 0;
|
|
||||||
|
|
||||||
destroy();
|
|
||||||
sprite.die();
|
|
||||||
|
|
||||||
} else {
|
|
||||||
initialized = true;
|
|
||||||
spend( lifespan + Random.Float( 2 ) );
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void damage( int dmg, Object src ) {
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String description() {
|
|
||||||
return
|
|
||||||
"This is a magic sheep. What's so magical about it? You can't kill it. " +
|
|
||||||
"It will stand there until it magcially fades away, all the while chewing cud with a blank stare.";
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void interact() {
|
|
||||||
yell( Random.element( QUOTES ) );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user