Exports and Events
Client Side Exports
IsPlayerFishing
Returns whether the player is currently fishing.
local isFishing = exports['prism_fishing']:IsPlayerFishing()Returns:
boolean-trueif the player is currently fishing,falseotherwise
Example:
if exports['prism_fishing']:IsPlayerFishing() then
print("Player is fishing")
else
print("Player is not fishing")
endGetPlayerFishData
Returns the player’s fishing data including their level, XP, and statistics.
local PlayerFish = exports['prism_fishing']:GetPlayerFishData()Returns:
table- Player fishing data with the following fields:identifier(string) - Player identifierlevel(number) - Current fishing levelxp(number) - Current experience pointstotalFishCaught(number) - Total number of fish caught
Example:
local PlayerFish = exports['prism_fishing']:GetPlayerFishData()
print("Identifier:", PlayerFish.identifier)
print("Level:", PlayerFish.level)
print("XP:", PlayerFish.xp)
print("Total Fish Caught:", PlayerFish.totalFishCaught)Server Side Events
prism_fishing:server:FinishFishing
This event is triggered when a player successfully finishes fishing and catches a fish.
AddEventHandler('prism_fishing:server:FinishFishing', function(data)
-- Your code here
end)Data Table Fields:
source(number) - Player source who finished fishing (server ID)fish(string) - Base fish key from Config.Fish (e.g., ‘fish’, ‘anchovy’)itemName(string) - Final item name added to inventory (may include quality suffix, e.g., ‘fish_bruised’ or ‘fish_perfect’)quality(string) - Quality identifier (‘perfect’, ‘bruised’)progressAccuracy(number) - Accuracy/progress percent achieved in minigame (0-100)dangerZone(string|nil) - Identifier of danger zone if the catch happened inside one, ornilqualityData(table|nil) - Quality metadata from Config.FishQuality.qualities[data.quality]- Contains fields like
icon,label,xpMultiplier
- Contains fields like
Example Usage:
AddEventHandler('prism_fishing:server:FinishFishing', function(data)
local src = data.source
local finalItem = data.itemName
local baseFish = data.fish
-- Calculate XP with quality multiplier
local baseXP = Config.Fish[data.fish].xpReward or 1
local xpMultiplier = (data.qualityData and data.qualityData.xpMultiplier) or 1
local totalXP = baseXP * xpMultiplier
-- Log the catch
print(string.format("Player %s caught %s (%s quality) with %.1f%% accuracy",
src, finalItem, data.quality, data.progressAccuracy))
-- Check if caught in danger zone
if data.dangerZone then
print("Caught in danger zone:", data.dangerZone)
-- Award bonus or trigger special event
end
-- Grant additional rewards, achievements, etc.
end)Last updated on