HEX
Server: Apache
System: Linux flamboyant-gauss.194-164-62-186.plesk.page 6.8.0-55-generic #57-Ubuntu SMP PREEMPT_DYNAMIC Wed Feb 12 23:42:21 UTC 2025 x86_64
User: gamesamphora (10001)
PHP: 7.4.33
Disabled: opcache_get_status
Upload Files
File: /var/www/vhosts/amphoragames.com/core_OLD/missionscontroller.php
<?php
class MissionsController {
	private $mission = 1;
	private $phase = 1;

	public function __construct($m = null, $p = null)
	{
		if (!is_null($m))
			$this->mission = $m;
		else
			$this->mission = 1;

		if (!is_null($p))
			$this->phase = $p;
		else
			$this->phase = 1;

		return $this;
	}

	public function data()
	{
		$data = [
			'1' => [
				'title' => 'Título de la misión',
				'text' => 'Bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla',
				'defeat' => 'Historia de la derrota...',
				'victory' => 'Historia de la... ¡victoria!',
				'phases'	=> [
					'1' => [
						'text' => 'Texto texto texto texto texto texto texto texto texto texto texto texto texto texto',
                        'containers'	=> [
                            [
                                [
                                    ['1.png', '1.png', '1.png'],
                                    ['1.png'],
                                ],
                                [],
                                ['1.png']
                            ],
                            [
                                ['1.png'],
                                ['1.png'],
                                ['1.png']
                            ],
                            [
                                ['1.png'],
                                [],
                                [
                                    ['1.png', '1.png', '1.png']
                                ]
                            ],
                        ],
						'data' => [
								'victory'	=> '2',
								'defeat'	=> '2',
							],
					],
					'2' => [
						'text' => '2 Texto texto texto texto texto texto texto texto texto texto texto texto texto texto',
						'containers'	=> [
							[
								[
									['1.png', '1.png', '1.png'],
									['1.png'],
								],
								[],
								['1.png']
							],
							[
								['1.png'],
								['1.png'],
								['1.png']
							],
							[
								['1.png'],
								[],
								[
									['1.png', '1.png', '1.png']
								]
							],
						],
						'data' => [
								'victory'	=> 'victory',
								'defeat'	=> 'defeat',
							],
					],
				]
			],
		];

		return $data[$this->mission];
	}

	public function victory()
	{
		$data = $this->data();

		$this->updatePhase($data['phases'][$this->phase]['data']['victory']);
	}

	public function defeat()
	{
		$data = $this->data();

		$this->updatePhase($data['phases'][$this->phase]['data']['defeat']);
	}

	public function getMissionData()
	{
		return $this->data();
	}

	public function getMission()
	{
		return $this->mission;
	}

	public function getPhase()
	{
		return $this->phase;
	}

	public function getPhaseData()
	{
		$d = $this->data();

		return $d['phases'][$this->phase];
	}

	private function updatePhase($p)
	{
		$this->phase = $p;
	}

	public function getURLOnVictory()
	{
		return "/?m={$this->mission}&p={$this->phase}&r=victory";
	}

	public function getURLOnDefeat()
	{
		return "/?m={$this->mission}&p={$this->phase}&r=defeat";
	}

	public function getNextMission()
	{
		return $this->mission + 1;
	}
}