Image

Namespace:

namespace Lenga\Engine\UI;

class Image

Methods

getColor

public function getColor()

@return array{r:int, g:int, b:int, a:int}

setColor

public function setColor(int $red, int $green, int $blue, int $alpha = 255)

Example

use Lenga\Engine\Core\Behaviour;
use Lenga\Engine\UI\Image;
use Lenga\Engine\Core\Time;

class UIImageController extends Behaviour
{
    public function start(): void
    {
        // Get the Image component
        $image = $this->getComponent(Image::class);

        if ($image !== null) {
            // Set the sprite to display
            $image->sprite = 'assets/ui/icon.png';
            $image->color = [255, 255, 255, 255]; // White, fully opaque
        }
    }

    public function update(): void
    {
        $image = $this->getComponent(Image::class);
        // Fade in/out effect
        $alpha = (int)(255 * (0.5 + 0.5 * MathUtil::sin(Time::time() * 2)));
        $image->color = [255, 255, 255, $alpha];
    }
}