# API docs

Below you can find an overview of all method available.

Below methods can be called by using the following method

```
BloodmoonAPI.someMethod();
```

{% tabs %}
{% tab title="Bloodmoon" %}

```java
/**
 * Return whether the bloodmoon is enabled for this world
 * @param world: world
 */
boolean bloodmoonIsEnabled(World world)

/**
 * Return whether the bloodmoon is enabled for this world
 * @param world: world
 */
boolean bloodmoonIsRunning(World world)

/**
 * Return whether the bloodmoon is scheduled for the next night
 * @param world: world
 */
boolean bloodmoonIsScheduled(World world)


/**
 * A method to start the bloodmoon in a world
 * @param world: world
 */
void startBloodmoon(World world)


/**
 * A method to stop the bloodmoon in a world
 * @param world: world
 */
void stopBloodmoon(World world)



/**
 * A method to schedule the bloodmoon in a world
 * @param world: world
 * THIS NO LONGER WORKS AS OF VERSION 4.0
 */
 
@Deprecated
void scheduleBloodmoon(World world)


/**
 * A method to cancel the scheduled bloodmoon in a world
 * @param world: world
 */
void cancelBloodmoon(World world)

```

{% endtab %}

{% tab title="Items" %}

```java
/**
 * Get a bloodmoon item
 * @param itemName: The name of the bloodmoon item you want to retrieve
 * @return The bloodmoon item
 */
ItemStack getBloodmoonItem(String itemName)
```

{% endtab %}

{% tab title="Mobs" %}

```java
/**
 * Return whether the entity is a custom entity
 * @param entity: entity
 */
boolean isBloodmoonMob(Entity entity)

/**
 * Spawn a bloodmoon mob on a location
 * @param mobName: the name of the bloodmoon mob
 * @param location: location where to spawn the bloodmoon mob
 */
void spawnBloodmoonMob(String mobName, Location location)


/**
 * Kill all bloodmoon mobs in a specified world
 * @param world: world
 */
void killAllBloodmoonMobs(World world)
```

{% endtab %}
{% endtabs %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://bloodmoon.pseudonova.com/api/api-docs.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
