植物大战僵尸95版代码(植物大战僵尸95版代码自动收集)

630g.com 发布于 2024-03-25 阅读(92)

简介

植物大战僵尸95版是一款风靡全球的塔防游戏,玩家需要布置各种植物来保护自己的家园免受僵尸侵害。本文将分享植物大战僵尸95版的代码,供广大游戏爱好者参考学习。

多级标题

一级标题:植物大战僵尸95版代码概述

二级标题:植物类

三级标题:豌豆射手

三级标题:向日葵

三级标题:坚果墙

三级标题:双发射手

二级标题:僵尸类

三级标题:普通僵尸

三级标题:路障僵尸

三级标题:铁桶僵尸

三级标题:舞者僵尸

内容详细说明

一、植物类

1.豌豆射手

代码如下:

```java

public class Peashooter extends Plant {

public Peashooter() {

super("P", 100, 50);

}

@Override

public void attack() {

GameSystem.getInstance().addBullet(new Bullet(this.getPosition().getX() + 1, getPosition().getY()));

}

```

豌豆射手是一种常见的植物,可以喷射豌豆来攻击僵尸。它的攻击代码实现的是将子弹添加到游戏系统实例中,子弹的起始位置在豌豆射手的位置加1(因为子弹是从豌豆射手正前方发出)。

2.向日葵

代码如下:

```java

public class Sunflower extends Plant {

public Sunflower() {

super("S", 50, 50);

}

@Override

public void act() {

GameSystem.getInstance().addSun();

}

```

向日葵是一种提供阳光的植物,它的作用是为玩家提供游戏币,可以用来购买其他植物。它的行动代码实现的是将阳光添加到游戏系统实例中。

3.坚果墙

代码如下:

```java

public class WallNut extends Plant {

public WallNut() {

super("W", 300, 50);

}

@Override

public void hurt() {

super.hurt();

if (getLife() <= 0) {

setImage("w2.png");

setLife(-1);

}

}

```

坚果墙是一种防御性植物,可以阻挡僵尸的前进。它的受伤代码实现的是在生命值小于等于0时,将坚果墙设置为另一张图片(w2.png),并把生命值设置为-1,以使它不再受到其他攻击。

4.双发射手

代码如下:

```java

public class DoublePeas extends Plant {

public DoublePeas() {

super("D", 150, 50);

}

@Override

public void attack() {

GameSystem.getInstance().addBullet(new Bullet(this.getPosition().getX() + 1, getPosition().getY()));

GameSystem.getInstance().addBullet(new Bullet(this.getPosition().getX() + 1, getPosition().getY(), 1));

}

```

双发射手是一种可以同时喷射两个豌豆的植物,攻击力大于豌豆射手。它的攻击代码实现的是将两个子弹添加到游戏系统实例中,它们的起始位置都在双发射手的正前方,但是一个偏上,一个偏下(因为两个子弹间需要间隔一定距离)。

二、僵尸类

1.普通僵尸

代码如下:

```java

public class NormalZombie extends Zombie {

public NormalZombie() {

super("Z", 100, 50);

}

@Override

public void advance() {

super.advance();

if (isAlive()) {

GameSystem.getInstance().checkGameOver(this);

}

}

```

普通僵尸是一种常见的僵尸,可以通过前进来接近植物并攻击。它的前进代码实现的是调用父类的前进方法,并在它仍然存活的情况下,检查游戏是否结束(即是否有植物被僵尸攻击成功)。

2.路障僵尸

代码如下:

```java

public class BarrierZombie extends Zombie {

public BarrierZombie() {

super("Z", 200, 50);

}

```

路障僵尸是一种具有更多生命值的僵尸,可以在攻击前多承受一些伤害。它的代码实现跟普通僵尸并无不同。

3.铁桶僵尸

代码如下:

```java

public class BucketZombie extends Zombie {

public BucketZombie() {

super("Z", 300, 50);

setImage("z2.png");

}

@Override

public void hurt() {

super.hurt();

if (getLife() <= 200) {

setImage("z3.png");

}

}

```

铁桶僵尸是一种具有更多生命值和铁桶装甲的僵尸,可以更有效地承受攻击。它在受伤后,会根据生命值的不同状态,动态地改变图片(z2.png、z3.png)。

4.舞者僵尸

代码如下:

```java

public class DancerZombie extends Zombie {

public DancerZombie() {

super("Z", 200, 50);

}

@Override

public void act() {

GameSystem.getInstance().attackPlant(this);

GameSystem.getInstance().attackPlant(this);

}

```

舞者僵尸是一种可以攻击两个植物的僵尸,可以对玩家造成一定程度的威胁。它的行动代码实现的是调用游戏系统的攻击植物方法,攻击两个植物。

标签:  植物大战僵尸95版代码