gries/pokemath

A PHP library to make calculation in base pokemon

19.10.31.1 2015-12-06 11:17 UTC

This package is auto-updated.

Last update: 2022-07-29 00:58:29 UTC


README

This PHP-Library can be used to make calculations base pokemon.

Installation

Pokemath can be installed via. Composer:

composer require "gries/pokemath"

Rebuild the classes

In data/pokemon.csv all pokemon-data is stored. (701 pokemon) To rebuild the classes execute.

php data/generator.php

Usage

<?php

use gries\Pokemath\Numbers\Ivysaur;
use gries\Pokemath\Numbers\Jigglypuff;
use gries\Pokemath\Numbers\Snorlax;
use gries\Pokemath\Numbers\Venusaur;
use gries\Pokemath\Numbers\Wigglytuff;

require_once __DIR__ . '/../vendor/autoload.php';


// small calculation
$ivy = new Ivysaur();
$venu = new Venusaur();

echo $ivy->add($venu)->value()."\n"; // -> charmander

// big calculation
$jiggly = new Jigglypuff();
$wiggly = new Wigglytuff();

echo $jiggly->multiply($wiggly)->value()."\n"; // -> ivysaur-chespin


// make it even bigger
$snorlax = new Snorlax();
echo $snorlax
        ->multiply($snorlax)
        ->multiply($snorlax)
        ->multiply($snorlax)
        ->multiply($snorlax)
        ->multiply($snorlax)
        ->value()."\n"; // -> nidorino-sandslash-klinklang-drifloon-gothita
        
// make calculations

$calculator = new \gries\Pokemath\PokeCalculator();

$expression = '(ivysaur + ivysaur) * ivysaur#ivysaur';
$result = $calculator->calculate('(ivysaur + ivysaur) * ivysaur#ivysaur');

echo $expression."\n";                                                  
// -> (ivysaur + ivysaur) * ivysaur#ivysaur
echo $calculator->translate($expression);                              
echo ' = '.$result->value(). '('.$result->asDecimalString().")\n";      
// -> (1 + 1) * 701 = venusaur#venusaur(1402)

Author

License

For the full copyright and license information, please view the LICENSE file that was distributed with this source code.