Added new config options to toggle collectible and trinket descriptions

This commit is contained in:
wofsauge committed 2020-04-05 19:51:17 +02:00
1 parent 99a4207c62
commit b4dae6b71a
4 files changed
+160 -40

No files matched your search

+6
View File
@@ -57,6 +57,12 @@ EIDConfig={
-- Toggle Display of the Item Type and Maximum Charges as an icon
-- Default = true
["ShowItemType"] = true,
-- Toggle Display of Collectible / Item descriptions
-- Default = true
["DisplayItemInfo"] = true,
-- Toggle Display of Trinket descriptions
-- Default = true
["DisplayTrinketInfo"] = true,
-- Set the RGB color of the Itemname text
-- Default = {0.8, 0.3, 0.8}
["ItemNameColor"] = {0.8, 0.3, 0.8},
+46 -40
View File
@@ -314,6 +314,16 @@ end
---------------------------On Render Function------------------------------
local hideDescToggle= false
-- check if an entity is part of the describable entities
local function isEntityAllowed(entity)
local isAllowed = false
isAllowed = isAllowed or (entity.Variant == PickupVariant.PICKUP_COLLECTIBLE and EIDConfig["DisplayItemInfo"])
isAllowed = isAllowed or (entity.Variant == PickupVariant.PICKUP_TRINKET and EIDConfig["DisplayTrinketInfo"])
isAllowed = isAllowed or (entity.Variant == PickupVariant.PICKUP_TAROTCARD and EIDConfig["DisplayCardInfo"])
isAllowed = isAllowed or (entity.Variant == PickupVariant.PICKUP_PILL and EIDConfig["DisplayPillInfo"])
return entity.Type == EntityType.ENTITY_PICKUP and isAllowed and entity.SubType>0
end
local function onRender(t)
isDisplayingText= false
local player = Isaac.GetPlayer(0)
@@ -332,7 +342,7 @@ local function onRender(t)
end
if Game():GetRoom():GetType()==RoomType.ROOM_DICE and entity.Type==1000 and entity.Variant== 76 then closestDice= entity end
if isModEntityDesc or (entity.Type == EntityType.ENTITY_PICKUP and (entity.Variant == PickupVariant.PICKUP_COLLECTIBLE or entity.Variant == PickupVariant.PICKUP_TRINKET or entity.Variant == PickupVariant.PICKUP_TAROTCARD or entity.Variant == PickupVariant.PICKUP_PILL) and entity.SubType>0) then
if isModEntityDesc or isEntityAllowed(entity) then
local diff = entity.Position:__sub(player.Position);
if diff:Length() < dist then
closest = entity;
@@ -402,50 +412,46 @@ local function onRender(t)
end
--Handle Cards & Runes
elseif closest.Variant == PickupVariant.PICKUP_TAROTCARD then
if EIDConfig["DisplayCardInfo"] then
if closest:ToPickup():IsShopItem() and not EIDConfig["DisplayCardInfoShop"] then renderQuestionMark() return end
if getModDescription(__eidCardDescriptions,closest.SubType) then
printTrinketDescription({closest.SubType,getModDescription(__eidCardDescriptions,closest.SubType)},"card")
elseif closest.SubType <= 54 then
printTrinketDescription(cardDescriptions[closest.SubType],"card")
CardSprite:Play(tostring(closest.SubType))
CardSprite.Scale = Vector(EIDConfig["Scale"],EIDConfig["Scale"])
CardSprite:Update()
local offsetX = 0
if EIDConfig["ShowItemName"] then offsetX = 10 end
CardSprite:Render(Vector(EIDConfig["XPosition"]-9*EIDConfig["Scale"],posY+(12+offsetX)*EIDConfig["Scale"]), Vector(0,0), Vector(0,0))
else
printTrinketDescription({closest.SubType,itemConfig:GetCard(closest.SubType).Description})
end
if closest:ToPickup():IsShopItem() and not EIDConfig["DisplayCardInfoShop"] then renderQuestionMark() return end
if getModDescription(__eidCardDescriptions,closest.SubType) then
printTrinketDescription({closest.SubType,getModDescription(__eidCardDescriptions,closest.SubType)},"card")
elseif closest.SubType <= 54 then
printTrinketDescription(cardDescriptions[closest.SubType],"card")
CardSprite:Play(tostring(closest.SubType))
CardSprite.Scale = Vector(EIDConfig["Scale"],EIDConfig["Scale"])
CardSprite:Update()
local offsetX = 0
if EIDConfig["ShowItemName"] then offsetX = 10 end
CardSprite:Render(Vector(EIDConfig["XPosition"]-9*EIDConfig["Scale"],posY+(12+offsetX)*EIDConfig["Scale"]), Vector(0,0), Vector(0,0))
else
printTrinketDescription({closest.SubType,itemConfig:GetCard(closest.SubType).Description})
end
--Handle Pills
elseif closest.Variant == PickupVariant.PICKUP_PILL then
if EIDConfig["DisplayPillInfo"] then
if closest:ToPickup():IsShopItem() and not EIDConfig["DisplayPillInfoShop"] then renderQuestionMark() return end
local pillColor = closest.SubType
local pool = Game():GetItemPool()
local pillEffect = pool:GetPillEffect(pillColor)
local identified = pool:IsPillIdentified(pillColor)
if (identified or EIDConfig["ShowUnidentifiedPillDescriptions"]) then
if getModDescription(__eidPillDescriptions,pillEffect) then
printTrinketDescription({pillEffect,getModDescription(__eidPillDescriptions,pillEffect)},"pill")
elseif pillEffect < 47 then
printTrinketDescription(pillDescriptions[pillEffect+1],"pill")
else
Isaac.RenderScaledText(EIDConfig["ErrorMessage"], EIDConfig["XPosition"], posY,EIDConfig["Scale"],EIDConfig["Scale"], EIDConfig["ErrorColor"][1] , EIDConfig["ErrorColor"][2], EIDConfig["ErrorColor"][3], EIDConfig["Transparency"])
end
else
Isaac.RenderScaledText(unidentifiedPillMessage, EIDConfig["XPosition"], posY,EIDConfig["Scale"],EIDConfig["Scale"], EIDConfig["ErrorColor"][1] , EIDConfig["ErrorColor"][2], EIDConfig["ErrorColor"][3], EIDConfig["Transparency"])
if closest:ToPickup():IsShopItem() and not EIDConfig["DisplayPillInfoShop"] then renderQuestionMark() return end
local pillColor = closest.SubType
local pool = Game():GetItemPool()
local pillEffect = pool:GetPillEffect(pillColor)
local identified = pool:IsPillIdentified(pillColor)
if (identified or EIDConfig["ShowUnidentifiedPillDescriptions"]) then
if getModDescription(__eidPillDescriptions,pillEffect) then
printTrinketDescription({pillEffect,getModDescription(__eidPillDescriptions,pillEffect)},"pill")
elseif pillEffect < 47 then
printTrinketDescription(pillDescriptions[pillEffect+1],"pill")
else
Isaac.RenderScaledText(EIDConfig["ErrorMessage"], EIDConfig["XPosition"], posY,EIDConfig["Scale"],EIDConfig["Scale"], EIDConfig["ErrorColor"][1] , EIDConfig["ErrorColor"][2], EIDConfig["ErrorColor"][3], EIDConfig["Transparency"])
end
local pillsprite = closest:GetSprite()
pillsprite.Scale = Vector(EIDConfig["Scale"]*0.75,EIDConfig["Scale"]*0.75)
pillsprite:Update()
local offsetX = 0
if EIDConfig["ShowItemName"] and (identified or EIDConfig["ShowUnidentifiedPillDescriptions"]) then offsetX = 10 end
pillsprite:Render(Vector(EIDConfig["XPosition"]+2*EIDConfig["Scale"],posY+(11+offsetX)*EIDConfig["Scale"]), Vector(0,0), Vector(0,0))
pillsprite.Scale = Vector(1,1)
else
Isaac.RenderScaledText(unidentifiedPillMessage, EIDConfig["XPosition"], posY,EIDConfig["Scale"],EIDConfig["Scale"], EIDConfig["ErrorColor"][1] , EIDConfig["ErrorColor"][2], EIDConfig["ErrorColor"][3], EIDConfig["Transparency"])
end
local pillsprite = closest:GetSprite()
pillsprite.Scale = Vector(EIDConfig["Scale"]*0.75,EIDConfig["Scale"]*0.75)
pillsprite:Update()
local offsetX = 0
if EIDConfig["ShowItemName"] and (identified or EIDConfig["ShowUnidentifiedPillDescriptions"]) then offsetX = 10 end
pillsprite:Render(Vector(EIDConfig["XPosition"]+2*EIDConfig["Scale"],posY+(11+offsetX)*EIDConfig["Scale"]), Vector(0,0), Vector(0,0))
pillsprite.Scale = Vector(1,1)
end
if player:HasCollectible(CollectibleType.COLLECTIBLE_SCHOOLBAG)then posY =EIDConfig["YPosition"] +30 end
end
+72
View File
@@ -0,0 +1,72 @@
<?xml version="1.0" encoding="UTF-8"?>
<metadata>
<name>External item descriptions</name>
<directory>external item descriptions</directory>
<id>836319872</id>
<description>This mod displays detailed information about all items, trinkets, cards, runes and pills DIRECTLY onto your screen. Say goodbye to your browsertab with platinumgod open ;)
[h1][b]------------------FEATURES------------------[/b][/h1]
- Displays information for ALL 552 Collectibles, 128 Trinkets, cards, Runes and Pills in the game, including afterbirth+ and all boosterpacks (#1 - #5)
- Displays if an item is needed for a transformation
- Displays the Name and Type (Active / Familiar) of any collectible
- Displays how many charges an item has
- Display one of 4 different Indicators around the inspected item
- [b]Press F2 to hide/show the descriptions![/b]
- Displays what the next payout of the Sacrifice room can be
- Displays a description of the effect of dice-rooms
- Fully customize-able including features like:
---- Custom language support
---- Disabling the descriptions, when Curse of the blind is active ([b]This is enabled on default[/b])
---- Customizable position, width and scale of the Textbox
---- Modded item support!
---- Custom item descriptions support
---- Custom entity descriptions
---- and much more
-- Including the following additional languages: [b]FRENCH[/b](by Nicolas Delvaux), [b]SPANISH[/b] (by Arroyo Purroy), [b]PORTUGUESE[/b] (by Marcelino Cruz) and [b]POLISH[/b] (WIP, by Rickyy)
Change the config.lua file to switch languages.
-- Click here for the [b]CHINESE[/b] version : [url=https://steamcommunity.com/sharedfiles/filedetails/?id=1290363695]EID Chinese Edition[/url] --
-- Click here for an alternative [b]CHINESE[/b] version : [url=https://steamcommunity.com/sharedfiles/filedetails/?id=848295251]中文道具图鉴 Eid Chinese[/url] --
-- Click here for the [b]ITALIAN[/b] version : [url=https://steamcommunity.com/sharedfiles/filedetails/?id=931392691]External Item Descriptions Italian[/url] --
-- Click here for the [b]RUSSIAN[/b] version : [url=https://steamcommunity.com/sharedfiles/filedetails/?id=1552851879]External Item Description (Russian Language)[/url] --
[h1][b]For Afterbirth / Rebirth Version click here: [/b][/h1]
https://moddingofisaac.com/mod/1079/external-item-descriptions
[h1]You can use [url=https://steamcommunity.com/sharedfiles/filedetails/?id=1603631350]&amp;quot;Mod config Menu&amp;quot;[/url] to customize this mod![/h1]
[h1][b]For further Configuration:[/b][/h1]
[b]Windows[/b]
1. Go to ..\Documents\My Games\Binding of Isaac Afterbirth+ Mods\External item descriptions\
2. Open &quot;config.lua&quot; with any texteditor
3. Edit the Config
4. Save the file
5. Play the game
[b]Linux / Ubuntu [/b]
Same as aboth but the path is: /home/%YourUsernameHere%/.steam/steam/steamapps/workshop/content/250900/836319872
[h1][b]Special Thanks to[/b][/h1]
- PLATINUMGOD.CO.UK for providing useful item descriptions
- r0_0t for the functionality to read pill effects and for implementing the modded item-Support
- Nicolas Delvaux for creating an awesome french language pack
- Lidia Arroyo Purroy for creating the amazing spanish spanish language Pack
- Rickyy for creating the incredible polish language pack
- Marcelino Cruz for creating the portuguese language pack
- [url=https://steamcommunity.com/id/whytefang/]adc[/url] for creating a awesome new Languagepack and providing ideas for new functionalities</description>
<version>1.63</version>
<visibility>Public</visibility>
<tag id="Lua"/>
<tag id="Items"/>
<tag id="Active Items"/>
<tag id="Trinkets"/>
<tag id="Pills"/>
<tag id="Cards"/>
<tag id="Tweaks"/>
</metadata>
+36
View File
@@ -100,6 +100,42 @@ if ModConfigMenu then
})
------------Collectibles--------------
ModConfigMenu.AddSetting("EID","General", {
Type = ModConfigMenuOptionType.BOOLEAN,
CurrentSetting = function()
return EIDConfig["DisplayItemInfo"]
end,
Display = function()
local onOff = "False"
if EIDConfig["DisplayItemInfo"] then
onOff = "True"
end
return "Collectible Infos: " .. onOff
end,
OnChange = function(currentBool)
EIDConfig["DisplayItemInfo"] = currentBool
end,
})
------------Trinkets--------------
ModConfigMenu.AddSetting("EID","General", {
Type = ModConfigMenuOptionType.BOOLEAN,
CurrentSetting = function()
return EIDConfig["DisplayTrinketInfo"]
end,
Display = function()
local onOff = "False"
if EIDConfig["DisplayTrinketInfo"] then
onOff = "True"
end
return "Trinket Infos: " .. onOff
end,
OnChange = function(currentBool)
EIDConfig["DisplayTrinketInfo"] = currentBool
end,
})
------------CARDS--------------
ModConfigMenu.AddSetting("EID","General", {