aboutsummaryrefslogtreecommitdiffstats
path: root/inc
diff options
context:
space:
mode:
authoralexichi <alexbankai96@gmail.com>2016-05-09 20:26:51 +0200
committeralexichi <alexbankai96@gmail.com>2016-05-09 20:26:51 +0200
commit2f32bc3153b7f2c2561e4603f912573921e6449f (patch)
tree87419a11e12f5b7433459fcb5cb9da5211dcbd9e /inc
parentf1677164c3f46785f6d9380b68cdeba58a680404 (diff)
downloadcandybox-2f32bc3153b7f2c2561e4603f912573921e6449f.tar.gz
candybox-2f32bc3153b7f2c2561e4603f912573921e6449f.tar.bz2
candybox-2f32bc3153b7f2c2561e4603f912573921e6449f.tar.xz
candybox-2f32bc3153b7f2c2561e4603f912573921e6449f.zip
add the use of the objects and the feature power and maxHP
Diffstat (limited to 'inc')
-rw-r--r--inc/Inventory.inc14
-rw-r--r--inc/Item.inc2
-rw-r--r--inc/Monster.inc4
-rw-r--r--inc/dungeon.inc3
-rw-r--r--inc/perso.inc33
5 files changed, 48 insertions, 8 deletions
diff --git a/inc/Inventory.inc b/inc/Inventory.inc
index 2be48f8..3e0137d 100644
--- a/inc/Inventory.inc
+++ b/inc/Inventory.inc
@@ -1,5 +1,7 @@
<?php
+require_once("perso.inc");
+
class Inventory {
public $items = array();
@@ -55,12 +57,14 @@ class Inventory {
foreach($this->items as $k => $object){
if($object[0] == $item) {
$nb = $this->items[$k][1];
- if($nb > 0) {
- $this->items[$k][0]->consume();
- $this->items[$k][1]--;
+ if(limitUse($this->items[$k][0])){
+ if($nb > 0) {
+ $this->items[$k][0]->consume();
+ $this->items[$k][1]--;
+ }
+ if($nb-1 <= 0) $this->_removeItem($item);
+ return array($object[0], $nb-1);
}
- if($nb-1 <= 0) $this->_removeItem($item);
- return array($object[0], $nb-1);
}
}
return false;
diff --git a/inc/Item.inc b/inc/Item.inc
index 8eebbf8..a8ee302 100644
--- a/inc/Item.inc
+++ b/inc/Item.inc
@@ -21,7 +21,7 @@ class Item {
foreach($this->feat as $k => $v) {
switch($k) {
case "hp": increasePerso("hp", +$v); break;
- case "power": break;
+ case "power": increasePerso("bonusPower", +$v); break;
}
}
}
diff --git a/inc/Monster.inc b/inc/Monster.inc
index c7063ec..ae48691 100644
--- a/inc/Monster.inc
+++ b/inc/Monster.inc
@@ -7,12 +7,14 @@ class Monster {
public $hp = 1;
public $xp = 0;
public $level = 1;
+ public $power = 1;
- function __construct($name, $level, $hp, $xp, $icon) {
+ function __construct($name, $level, $hp, $xp, $power, $icon) {
$this->name = $name;
$this->level = $level;
$this->hp = $hp;
$this->xp = $xp;
+ $this->power = $power;
$this->icon = $icon;
}
diff --git a/inc/dungeon.inc b/inc/dungeon.inc
index c023cf8..521303e 100644
--- a/inc/dungeon.inc
+++ b/inc/dungeon.inc
@@ -14,7 +14,8 @@ function generateMonster(){
$dungeon["monsters"][$floor][] = new Monster((string)$monster->name,
intval($monster->level),
intval($monster->hp),
- intval($monster->xp),
+ intval($monster->xp),
+ intval($monster->power),
(string)$monster->icon);
}
}
diff --git a/inc/perso.inc b/inc/perso.inc
index f455173..0a32b64 100644
--- a/inc/perso.inc
+++ b/inc/perso.inc
@@ -10,21 +10,54 @@ function increasePerso($prop, $num) {
if(empty($_SESSION["perso"]))
initPerso();
$_SESSION["perso"][$prop] += $num;
+ if($_SESSION["perso"]["hp"] > $_SESSION["perso"]["maxHP"]){//if you want to heal even if you have less than 3 hp to heal, heal until the max is attained
+ $diff = $_SESSION["perso"]["hp"] - $_SESSION["perso"]["maxHP"];
+ $_SESSION["perso"]["hp"] -= $diff;
+ }
+}
+
+/**
+ *traite le fait que wooden sword n'est pas cumulable
+ *metal sword non plus
+ *life bottle cumulable 3 fois
+ *si on clique sur wooden sword alors que on avait une metal sword, le bonusPower passe de +3 à +1
+ */
+function limitUse($item){
+ $n = $item->name;
+ if($n =="Life Bottle")return true;
+ if(empty($_SESSION[$n])){
+ $_SESSION[$n]=1;
+ return true;
+ }
+ else{
+ $_SESSION[$n]++;
+ if($_SESSION[$n] >= $item->feat["limit"])return false;
+ else return true;
+ }
}
function updatePerso(){
$hp = $_POST["hp"];
+ $maxHP = $_POST["maxHP"];
$xp = $_POST["xp"];
$lv = $_POST["lv"];
+ $power = $_POST["power"];
+ $bonusPower = $_POST["bonusPower"];
$_SESSION["perso"]["hp"] = +$hp;
+ $_SESSION["perso"]["maxHP"] = +$maxHP;
$_SESSION["perso"]["xp"] = +$xp;
$_SESSION["perso"]["lv"] = +$lv;
+ $_SESSION["perso"]["power"] = +$power;
+ $_SESSION["perso"]["bonusPower"] = +$bonusPower;
}
function initPerso(){
$_SESSION["perso"]["hp"] = 5;
+ $_SESSION["perso"]["maxHP"] = 5;
$_SESSION["perso"]["xp"] = 0;
$_SESSION["perso"]["lv"] = 3;
+ $_SESSION["perso"]["power"] = 3;
+ $_SESSION["perso"]["bonusPower"] = 0;
}
?>