Sueta
DS

DSSkriptAddon

1.0.1

a skript addon to use different functions of DynamicStands in your scripts

·Plugin

DSSkriptAddon


Important Note:
This resource depends on DynamicStands, because DSSkriptAddon just works as an interface between Skript and DynamicStands. It can't run as stand-alone plugin.

Description
DSSkriptAddon is a Java addon for Skript. It provides different tools to extend and customize DynamicStands for your personal needs via Skript.
This resource is useful for everybody, who knows how to write Skript extensions and who wants to add his own ideas to DynamicStands.

Features

  • Nearly 20 Elements (Events, Expressions, Effects and Conditions)
  • Easily spawn/despawn and manage different object types
  • Includes all important events
  • Create easily your own commands
  • Give objects to players
  • Check if players are driving vehicles
  • Fuel up vehicles
  • ...

Elements
Currently DSAddon works with three extra types besides the standard types: objttype, dsobject and vehicle. Vehicle is just a special form of dsobject and describes the object as drivable. (Every vehicle is a dsobject, but not every dsobject must be a vehicle)

Events

-> ObjectSpawning:

Events

Syntax: - „[on] spawn[ing] object [[of type] %objtype%]“


-> ObjectDespawning:

Syntax: - „[on] despawn[ing] object [[of type] %objtype%]“

-> VehicleJoin:

Syntax: - „[on] join[ing] vehicle [[of type] %objtype%]“

-> VehicleEjectEvent:

Syntax: - „[on] eject[ing] vehicle [[of type] %objtype%]“

-> VehicleFuelEvent:

Syntax: - „[on] fuel[ing] vehicle [[of type] %objtype%]“

Conditions

-> DrivingCondition:

Syntax: - %player% is driving

-> OwningCondtion:

Syntax: - %player% onws %objtype%

-> SpawningCondition:

Syntax: - %player% has spawned %objtype%

Effects

-> VehicleEjectEffect:

Syntax: - eject(s) %player%

-> VehicleSpawnEffect:

Syntax: - spawn [the] object %objtype% for %player%

-> VehicleDespawnEffect:

Syntax: - despawn [the] object %objtype% from %player%

-> VehicleFuelEffect:

Syntax: - fuel [the] object %vehicle% (by %number% | to %number%)

-> ObjectGiveEffect:

Syntax: - give object of type %objtype% to %player%

Expressions

-> VehicleInUseExpression:

Syntax: - current vehicle of %player%

-> VehicleSpawnedExpression:

Syntax: - vehicle of %player% with type %objtype%

-> ObjectCollectionExpression:

Syntax: - [get] [all] objects of %player%

-> ObjectOwnerExpression:

Syntax: - owner of %dsobject%

-> VehicleFuelExpression:

Syntax: - [get] fuel of %vehicle%

- [get] fuel percentage of %vehicle%

Example Script

Code
on despawning object of type motorbike:
    broadcast "There goes another bike."

on fueling vehicle car:
    broadcast "%player% tries to fuel"
    broadcast "it cost price"
    cancel event
  
on spawning object:
    broadcast "an object has been spawned at [%location%] from %event-player%"

on joining vehicle:
    set {_owner} to owner of event-vehicle
    broadcast "%player% joins a %event-vehicle% (owner: %{_owner}%)"
    set {_fuel} to rounded (fuel percentage of event-vehicle * 100)
    send "you got %{_fuel}% %% petrol left" to player

command /dscheck:
    description: Checks if you are driving an vehicle
    executable by: players
    trigger:
        if player is driving:
            eject player
            send "Don't text and drive!" to player
        else:
            send "Good manners!" to player
          
command /dsspawn <objtype>:
    description: Spawns an object of your choice
    executable by: players
    trigger:
        if player owns arg 1:
            spawn the object arg 1 for player
            send "There you go ;)"
        else:
            send "Seems like you have to spend some money"
      
command /dsdespawn <objtype>:
    description: Spawns an object of your choice
    executable by: players
    trigger:
        if player has spawned argument 1:
            despawn the object argument 1 from player
            send "There it's gone."
        else:
            send "Nothing found so far."
  
command /dslist:
    description: A test command
    executable by: player
    trigger:
        send "Here is your collection: " to player
        loop all objects of player:
            send "-%loop-value%" to player

command /dsdrive:
    description: A test command
    executable by: player
    trigger:
        send "Info: %current vehicle of player%" to player
      
command /gamble <objtype>:
    description: Gamble about some petrol
    executable by: player
    trigger:
        if player has spawned argument 1:
            send "Your odds are 50 percent"
            set {_vehicle} to vehicle of player with type argument 1
            chance of 50%:
                fuel the object {_vehicle} by 40
                send "You got lucky" to player
            else:
                fuel the object {_vehicle} to 0
                send "Try it again" to player
        else:
            send "No vehicle found" to player

command /dsgive <player> <objtype>:
    description: give somebody an object
    executable by: player
    trigger:
        if player is op:
            if argument 1 owns argument 2:
                send "%argument 1% already owns %argument 2%" to player
            else:
                give object of type argument 2 to argument 1
                send "A present arrived for you :) Check your garage!" to argument 1
        else:
            send "Nice try" to player

Similar projects

Plugin →