Skip to content

Randomized World Base

Пупсич edited this page Jun 13, 2026 · 1 revision

Initialization

local RWBase = require("YAPZLib/RWBase")

Main functions

RWBase:derive(__type)

[string] __type

returns table that can use following functions


RWBase:getSquare(offsetX, offsetY, z)

[number] offsetX

[number] offsetY

[number] z

returns [IsoGridSquare] square


RWBase:addVehicle(name, offsetX, offsetY, dirAngle, skinIndex, zoneName, doFlipped) -- zoneName - this is a thing created just in case some mods may use vehicle:getZone()

[string / table] name

[number] offsetX

[number] offsetY

[number] dirAngle - optional

[integer / table] skinIndex - optional

[string] zoneName - optional

[boolean] doFlipped - optional

returns [BaseVehicle] vehicle


RWBase:addTrailer(name, vehicle, offset, skinIndex)

[string / table] name

[BaseVehicle] vehicle

[number] offset

[integer / table] skinIndex - optional

returns nil


RWBase:addZombiesOnVehicle(vehicle, totalZombies, outfit, femaleChance, doNotSpawnKey) -- doNotSpawnKey - prevents key spawning of given vehicle in added zombies

[BaseVehicle] vehicle

[integer] totalZombies

[string] outfit

[number] femaleChance - optional

[boolean] doNotSpawnKey - optional

returns [table] zombies


RWBase:setAttachedItem(zombie, location, item, ensureItem)

[IsoZombie] zombie

[string] location

[string] item

[string / list] ensureItem - optional

returns nil


RWBase:addBloodSplat(offsetX, offsetY, z, num)

[number] offsetX

[number] offsetY

[number] z

[integer] num

returns nil


RWBase:addTileObject(offsetX, offsetY, z, obj, clear, dirt, inputSquare) -- inputSquare - allows to use already received square

[number] offsetX

[number] offsetY

[number] z

[IsoObject] obj

[boolean] clear - optional

[boolean] dirt - optional

[IsoGridSquare] inputSquare - optional

returns [IsoObject] obj


RWBase:addTileObjectBySpriteName(offsetX, offsetY, z, spriteName, clear, dirt)

[number] offsetX

[number] offsetY

[number] z

[string] spriteName

[boolean] clear - optional

[boolean] dirt - optional

returns [IsoObject] obj


RWBase:addFloor(offsetX, offsetY, z, spriteName)

[number] offsetX

[number] offsetY

[number] z

[string] spriteName

returns [IsoObject] floor


Utility functions

RWBase.getVehicleFromZone(zoneName, exclude, fromChances) -- returns random vehicle name from zone distribution table | exlude - used to not recieve some vehicles | fromChances - used to get vehicle based on spawn chances

[string] zoneName

[string / table] exclude

[boolean] fromChances

returns [string] vehicleName


RWBase.getAllowedTrailerFromZone(vehicleName, zoneName, exclude, fromChances) -- works like previous function, but returns name of trailer that can be attached to certain vehicle

[string] vehicleName

[string] zoneName

[string / table] exclude

[boolean] fromChances

returns [string] trailerName


RWBase.cleanSquareForStory(square)

[IsoGridSquare] square

returns nil


RWBase:isTimeValid()

returns [boolean] true or false


RWBase:calcAngle(angle)

[number] angle

returns [number] angle


RWBase:calcOffset(offsetX, offsetY)

[number] offsetX

[number] offsetY

returns [number] offsetX, [number] offsetY


RWBase:roundSqCoord(coord)

[number] coord

returns [number] coord

Clone this wiki locally