#plugins-dev-chat
1 messages · Page 199 of 1

I make request for it
But you could still do geeat stuff
Like Moving elevator
@upper vapor i love u
I finished implementing ur audio system
Its kinda fixed issue

Yipee
@upper vapor If I were a furry, would NW hire me sooner? 
What do you think is the answer?
Yes 
💀
thats how david became staff
legit only like 2 people are furries in nw
i can count 3 thats online
Thats insanely wrong number
ax, foxyfoxt, catyfox
killers
theres probably like 100x that number but yk
Are you sure about that Lumi?
lumi too no?
no
well now thats a surprise
Eve too
thats wrong on both counts
even that she isnt from NW
what

you heard me
Eve...
that might be me
Turn them into spaghetti david, and put them in the hube cube 
Sending her to the bottomless pit
We have one of those? 
What scp number is it? 087? The staircase
can you please tell me in which class this is?
DeadmanSwitch.OnActionationHeal()
thank you guys!
Its called Actionation???😭
no i typed by hand 

i fuck it again click the restart button missclick
🔥
😂
(it still doesn't show shit anyway)
☠️

You only want to cancel the event for Warhead activation
I'm not sure what other circumstances there are but destroying the component will cancel the event for everything
what happens when you send spawn message to client with network id already spawned?
so like 2 times spawn message
Try it and see
It respawns the object
i think its because its used in the hide?
How can i get which is gonna be the next spawn wave?
and the timer?
i just made a thing that checks both of them and sees lol
Yeah this isn't stored anywhere
Whatever timer reaches 0 first triggers it
And it stops other timers
Also check if they have ticket to spawn
Why?
if the faster they are
the more obv
it is who is it
public static string GetNextWaveHint()
{
RespawnWave? chaos = RespawnWaves.PrimaryChaosWave;
RespawnWave? mtf = RespawnWaves.PrimaryMtfWave;
if (chaos == null && mtf == null)
return "<color=white>00:00</color>";
if (chaos == null)
return FormatMtf(mtf!);
if (mtf == null)
return FormatChaos(chaos);
if (chaos.TimeLeft <= mtf.TimeLeft)
return FormatChaos(chaos);
else
return FormatMtf(mtf);
}
This is the logic i used
if (chaos.RespawnTokens == 0 && mtf.RespawnTokens == 0)
return "<color=white>00:00</color>";
So like this?
Yeah
c#
public static string GetNextWaveHint()
{
RespawnWave? chaos = RespawnWaves.PrimaryChaosWave;
RespawnWave? mtf = RespawnWaves.PrimaryMtfWave;
if (chaos == null && mtf == null)
return "<color=white>00:00</color>";
if (chaos == null)
return FormatMtf(mtf!);
if (mtf == null)
return FormatChaos(chaos);
if (chaos.TimeLeft <= mtf.TimeLeft && mtf.Token != 0)
return FormatChaos(chaos);
else if (chaos.Token != 0)
return FormatMtf(mtf);
}
The logic isn't good
Because if chaos token is 0 then return mtf time
But lazy to write it on phone
i could definitely turn this into a switch expression\
also, how do you handle mini waves?
return (chaos, mtf) switch
{
({RespawnTokens: > 0}, {RespawnTokens: <= 0}) => FormatChaos(chaos),
({RespawnTokens: <= 0}, {RespawnTokens: > 0}) => FormatMtf(mtf),
({TimeLeft: var chaosTime, RespawnTokens: >= 0}, {TimeLeft: var mtfTime, RespawnTokens: >= 0})
=> chaosTime <= mtfTime ? FormatChaos(chaos) : FormatMtf(mtf),
_ => "<color=white>00:00</color>"
};
fml what in the fuck
hold on
c# is the definition of syntax sugar
crayz
ItemSpawningEventArgs if you set the item type it doesn't change im pretty sure
public void ServerRegisterPickup(ItemPickupBase pickup, string triggerDoor = null)
{
ItemSpawningEventArgs e = new ItemSpawningEventArgs(pickup.ItemId.TypeId);
ServerEvents.OnItemSpawning(e);
if (e.IsAllowed)
{
if (pickup is IPickupDistributorTrigger pickupDistributorTrigger)
{
pickupDistributorTrigger.OnDistributed();
}
if (string.IsNullOrEmpty(triggerDoor) || !DoorNametagExtension.NamedDoors.TryGetValue(triggerDoor, out var value))
{
SpawnPickup(pickup);
}
else
{
RegisterUnspawnedObject(value.TargetDoor, pickup.gameObject);
}
ServerEvents.OnItemSpawned(new ItemSpawnedEventArgs(pickup));
}
}
but it has a setter
but yea how tf i can like change them?
and where i could do that?
on map generating?
wtf you mean?
like this whole process is gonna be ugly
how bad
you gotta do what you gotta do
you could patch each spawnpoint class
TryGeneratePickup
and override the item type
spawnpoints don't have a target
or am i wrong
foreach (ItemSpawnpointBase instance2 in ItemSpawnpointBase.Instances)
look at the derived types
why tf its so hard
ig i can just do
ServerRegisterPickup
and patch that ig
but then make sure to destroy the pickup created by the spawnpoint
yea obv
anyone else having a problem where a plugin just deletes itself
🙏 😭
like theres no errors i just refresh the page and its just gone
what
ok hold on this might be a problem with my hosting provider
yeah it was fixed it lmao
oh you were talking about pteroo
or some other panel
i thought it was about the plugins website

LOL
🧠
public void OnItemAdded(ReferenceHub ply, ItemBase ib, ItemPickupBase pickup)
{
ItemCategory category = InventoryItemLoader.AvailableItems.TryGetValue(ib.ItemTypeId, out var itemBase)
? itemBase.Category
: ItemCategory.None;
if (category != ItemCategory.Firearm)
return;
Player player = Player.Get(ply);
Timing.CallDelayed(1, () =>
{
player.RemoveItem(ib);
player.AddItem(ItemType.GunCOM15);
});
}
Why tf this creates like an infinite item???
AddItem runs OnItemAddded again
oh fuck
you are right
AHAHHAHAHAHA
That funny
You can never run out of bullets if you just add more gun or something
btw is custominfo enabled by default?
idk
nope
of what i remind
it's could have changed
🇨🇿 🇨🇿 🇨🇿
@serene vine
someone already got to them
Oki
ghostcid got em
Zap
yo nw people we love you how tf do i get the time for decontamination before it decontaminate?
;(
DecontaminationController.GetServerTime ?
it was really just that
Ye?
is it in seconds?
its 0 btw
Try with
RoundStartTime
Or
TimeOffset
get server does that btw
I meant separately
No way
btw both of them don't work
so
idk
can't you check what the client does'
when the text gets updated on the screen?
_elevatorsLockedText ?
Obv with Network_ before
??
role inventory
Is it against any rules or anything to decompile the game for the assets? And whether or not there's anything I shouldn't do, like streaming it to others or something else.
I'm not talking about source code or anything just main assets like materials, textures, cubemaps and lighting
No, as long as it's limited to assets and doesn't attempt to touch security features like SL-AC
Okay cool
!blenderports
I wanna share some of my own ideas for stuff like lighting as well
They might have what you're looking for
!:Joe: it would mean the command looking like this lol
Fucking hate discord mobile
Even though it's in a code block it trimmed the snowflake id of the emoji
Guys, newbie question here
How can I get RoleBase value, knowing only RoleTypeId?
PlayerRoleLoader.TryGetRoleTemplate
crazy name btw
Thanks ^^
np
@slate flume with regards to https://github.com/northwood-studios/LabAPI/issues/176 and https://github.com/northwood-studios/LabAPI/issues/248
would you expect the update events be called only once if ServerSetState is called?
Why was the 11th of march so quieet
needed to build up anticipation for the GabeCube
how good is it compared to the quest 2?
Hey does anyone know if any of the code for the flamingo door breaking is still in the game and if not would it be possible to replicate?
i dont know if it its still there but you can look at the shooting interactions plugin as a reference
Check if the door is a BreakableDoor
If the hit was successful, send a hitmarker
yea
It's still in game yes
Nice
gonna buy it when it comes out
and sell my quest 2
Sab
Z70-es zónázó vonat indul Vác, Szob állomásra a 4. vágányról.
A vonat csak a következő állomásokon és megállóhelyeken áll meg: Vác, Verőce, Kismaros, Nagymaros-Visegrád, Nagymaros, Szob alsó és Szob.
||K.A.T.I.E Moment||
Kati pillanat
can we have katie on sl?
If she & MÁV & BME agree, then yes
Bunch of legal bullshit with copyright owners
My program is mine, Kati's voice isn't 
Lmao
how do I create different types of cameras? The LabApi wrapper is very vague
get all the prefabs and check them by name
thank you Eve
@harsh thorn Hello, when trying to join any server in SCP SL, the connection reaches 90% and then gets disconnected from the game, please help
Is this an option?
How to access Crash.log and Crash.dmp files
I used the other option and it directly transferred this to me
How to access Crash.log and Crash.dmp files
well, we dont do game support in this channel
make a ticket in #technical-support if you want help
I don't know how to create it
The translation may have a spelling mistake, I didn't say it like that
you already made one
you used the bot, it asked a question, you answered it
now you wait for a tech support member to help you
if the bot tells you to provide information, do that aswel
so tech support can help once one is available
the bot will provide links to guides
and if you have any questions, ask it in that channel
Shall I follow what the bot is saying now?
Yes
ask questions in the ticket, not here
Sorry bro
very confucius
what approach did you take to get the frames into SL? did you just conver it to binary as 0 or 1 bytes/bits?
i have found a diabolical way to do stuff like this
I think for that one I got the frames as text files from another project with characters and spaces to show the image. I converted them to Square characters and added a color tag to change it back or white depending on if it was a space or character.
I've found better ways to do it that can bypass the 32kb limit on the string, but it lags the client for multiple seconds when they look at it.

Been more focused on work and the NavMesh for HCZ so haven't looked at that one in a bit
Fun fact on text toys: <#RRGGBB> works as shorthand for the color tag, and can be chained without closing it, saving a ton of characters.
It can also accept an alpha channel for transparencies
textmeshpro's bs never fails to amaze me
Wow, even I didn’t know this elite ball knowledge
Doesn't it accept HTML like what pastebin uses?
That's what i've usually done is just <color=#000000> </color>
Well, shit
Wish I'd known this for the past 6 years
Isn't that what would happen anyway with a normal color tag though
Unless I'm grossly misremembering
Thats what im saying
</color>?
</html>
alright buddy im not planning on breaking tmpro today
then wait for 1 more hour and you can do it
Why </color> when you can stack hundreds of them and make it the next person's problem
because of maintainibility 
But yeah that knowledge was buried in the middle of the TMP color docs in the example, not even explained
Awwww
aura
Anyway its nearly 1 am go eep
True
I sid a good deal
Boughjt good
Shit
Good that makes my devs job a lot easier. Gonna give that ability to 939
why not just remake flamingos in SL
? https://youtu.be/qLKZ1j-5SQw
clippy is also in the clip for funsies
Double it and give it to the next person
I love clippy
Tho clippy will need to answer a question but still he supports the triangle movement
Does the camera object have a MonoBehavior that can be used to find SCP-079, which is located in this chamber?
I found camera layer
Scp079Camera?
Hm
Yes, I found it in his parent. Thank you!
npű
Hmmmmmmmm
Why is Scp079Role.LocalInstance.CurrentCamera static if there can be multiple SCP-079s?
that's for the client
And how can I get the player who plays as SCP-079 and is in that camera from Scp079Camera?
Ooh
Scp079Role should have a current camera property so you can check against that
Ok
How can I switch the player's camera? scp079Role._curCamSync.CurrentCamera = value doesnt work...
That works fine for me
tbh i wanna ask on both discord what is something developer find really hard? for SL?
cant test
anything and everything all of the time
ok i cannot create something for that lol
im not a goddess
so
i cannot fix that either
if i need to fix anything and everything
Apparently there's a way of culling lightsources and primitives, is this true yet or do u I gotta fly to NW HQ and tell them to add one
i cannot got rejected 
yes but i dont know how it works

i know how it works
but i have so many problems with it
OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
because who coded it
(ive never had to use it lol)
made it so THAT THE CENTER IS THE FUCKING CULLING
BRO YOU HAVE NO IDEA HOW LONG IVE WAITED FOR THIS DAY
i asked hubert myself
and he added it

FINALLY
I CAN FINALLY MAKE A REAL LIGHTING SYSTEM
its called Culling toy
Now last question is...
It was actually coded before
fr?
I sent him the MR during his stream
H O W T H E F U C K D O I L E A R N A L L A T
yea
thats why he quit earlier
no
riptide
wanting to play current versions
we love you riptide
lol bro go back to fucking #serverhost-cat
No
I mean just press
Play?
Its that easy
crazy
playing and wanting to play is different
let me do a tutorial
Can't test on the fly, gotta open the game and check to make sure its all good or leave it open, which jsut bloats my hours and makes me seem like I live in a cave
You missed the point but thats alright
That actually makes a lot of sense
culling primitives
yea i knew waypoints
Yea
but not that
Culling primitive?
didn't he do that on VC cuz I remember watching him stream that or something
Cat (where he belongs?)
lol
my bad
BUT MOM I DONT WANNA LEARN NEW SHIT RN
MOM????
when tf i became a mom???
congrats 02
I said so
is that Zer0Thr33 then
Wait r u actually a father?
he is now
No actually is he?
I don't think I want to know who the other parent is
right I forgot mb
ig thats right lol im like Zer0One, Zer0Two, Zer0Three, Zer0Four, Zer0Five
Like
multiverse type of shit
I was just making a bit lol
Zer0Five playing five nights at freddys
Didn't think that was true
i played fnaf
STOLE IT FROM ME
SKILL ISSUE
i sent it too many time
btw answering this, seriously its not hard lol
it takes like 2 seconds
No kidding but its almost 2am and I'm tried and jsut finished releasing a full server so wanna take a break for a bit
sentenced to using Taj Mod Custom Roles API
But atleast I know what my next project will be
sentenced to Welcome to SCP: Secret Laboratory. I'm one of the voice actors for the game. Let me introduce you to the basic gameplay rules. Try to find and check toilets in order to find a potential keycard.
calling other people mom???

I like making bits lol
idk bro like
Here is Hubert saying it in Polish
crazy
i get called f word
by russian
and now i joined this lol
give me a break world 
lol
Redundant parentheses
fuck u
How do i spawn a weapon pickup with magazine/loaded 
get the firearm template for that firearm
get the magazime module
ServerSetInstanceAmmo
Ah i see, thank you
But im not sure how i could do this dynamically with the different weapon types?
Like spawn the shotgun fully loaded, or com15 fully loaded, or AK fully loaded etc
np
this uhhh
you'll need to find the adequate magazine module type
works for automatic guns but for the shotgun and revolver you'll need a different type
yeah those will be handled differently, but like, the different types of guns have different max ammos in their magazines.
How could i "fully reload" a firearm, no matter what it is, or maybe even no matter its magazine attachment
IPrimaryAmmoContainerModule has a MaxAmmo prop
aaaaand then there's the IActionModule which might be an IAmmoContainer
ye
sooo
you can use ItemAddReason.AdminCommand to have the uhhhh
mag
be filled
and then try to get AutomaticActionModule
if there is no such module, ignore it
right
you need this for a pickup
i spawn a pickup in the world, idk if that has a reason
not sure why you're inserting an empty magazine here
but you should only set the amount in the mag module's max
well
either it's CylinderAmmoModule or MagazineModule
the former is just complicated
there is another method to load a loaded mag but that calls ServerLoadAmmoFromInventory and idk how that plays with a pickup
okay okay okay how about
AttachmentPreview.Get(ItemIdentifier)
this way you can call the instance methods
sooo that creates a simulated firearm class
i dont understand how that helps me
maybe
yeah you can call ServerSetAmmo and such
but it doesn't make the server shit itself
-# or at least it shouldn't 
am in a switchcase
to handle automatic mag weapons and shotgun and revolver differently n stuff
why do you need the "real" module
i thought the process was
- spawn the firearm as pickup
- create a simulated firearm with same attachments
- Set ammo/mag values of the pickup, from the values of the simulated one
?w?
I just want to spawn a Com15 as a Pickup fully loaded why is this so complicated
- spawn pickup
- get preview
- set serial
- fill the IPrimaryAmmoContainerModule
- fill the AutomaticActionModule (if exists)
- how
- how
hello ham
my brain is going ham
rea,lé
i remember when magazines in this game were simple
and not 500 gazillion submodules
that was a long time ago
hmm, my attempt at filling the chamber doesnt work
when i pick it up its 40/40 for the stock e11, but when equipping it, the player does the cycle anim and the ammo count goes to 40/41
random curious observation
AutomaticActionModule does not have a SyncChambered setter, but
PumpActionModule does have a setter for that
even if i set the shotguns barrels to 1 or >2, the pump loads 2 shells ,_,
i feel like my plan of an automatic shotgun might be easier to do if i make a modified E11 instead ._.
Ima redo my custom items soon any hierarchy someone can recommend me and how would j make a micro in a custom item system that is infinite ammo
ohhh
that's for inf power
thanks
did you add an env variable for SL_REFERENCES
ok
still
do I needa refresh csproj?
Does the references contains the dll?
Does your ide actually importing it?
idk
is there any way to refresh the project in rider to refresh csproj?
refreshing didn't work
Doesnt seem to work
Setting AmmoStored even with a ServerResync doesnt work qwq
Only once i pull out the rifle and do the slider rack animation does AmmoStored get set to 1, but setting it myself beforehand doesnt do anything
oh
someone's used to js i see
im stupid :(
so sad
Nah LuaU tables
even worse lol
what?
trust me this mod is such a banger
so true
have you tried open computers too?
CC:Tweaked?
updated and with plethora
DAMN
OpenComputers
different
did I make a boot menu for stuff? yes
ok ts is for lab api plkugins I think only?
or idk
ahh ok
game specific
I did an entire OS for checking the SCRAM for a Mekanism reactor
LOL
and ONE OF MY FRIEND (stupid MF) fucking put the override code and MANUALLY MADE CHANGES
EXPLODING AN ENTIRE DIMENSION
I made OSes for fun
it was a script with plethora that allowed to xray for turtles
so chat me sending a plugin to draco a long time ago made me recover my source code
i wrote a modular control system
separate computers for each type of system to monitor the alarm values and scram the reactor if any went bad (reactor computer monitored both the reactor and turned it off)
and then i had a "server" that calculated the reactor output nessecary to achieve the demand reported by the turbine computer
and then i had a pc i used to display a screen with a UI lib
:)
it was fun
dnSpy time?
nice!
crazy
tbh which mod it was you did it?
CC
Nuclear Craft or mekanism?
mekanism
ahh
Mekanism is such a banger
i work in the maritime sector so i was effectively just cloning a ship's alarm and management system

same type of architecture
i love putting nuclear waste in a trash slot
i just remember that the entire base started flashing red and warning everywhere about the reactor exploding
and then heard a boom

so why didnt it scram? 
because a fuckass put it in override mode
and set max settings for everything
and min for cooling
crazy system
yeah uh
its gonna have big security in it
my previous program had override modes, but im too much of a "pls dont blow up" that i never add in bypasses for safety systems
btw for the mods this is not off topic, you can build reactors in SL too
lol
never even a switch you can turn off?
lots of spaghetti in that previous one
you would have to turn off the computer
i added a crazy system with plethora, that made my friend control me and pratically they started moving me
or dropping shit
just for the fun and giggles
with the new programm turning off one of the computers means you trigger a "no communication" which will turn off the reactor

the reactor pc also has another pc on its local network with its only job being to make sure the reactor computer is on
crazy
chunk loading is a bitch sometimes
precautions for precautions
honestly the safest thing i do
backups of a backup
i run it in my base, cuz reactor cool :3
the golden door <3
what if your friend breaks a block

lowk havent gotten to play SB4 yet
Super cool
or 3 i saw create and alt f4d
completed it
im doing sb1 for the 20th time rn
we started same day it was released
it was peak
when you have alot of time
right now im playing a modpack called deceased craft
no job in sight
which has create lol
10 7x10 reactors iirc
I HATE IT
please remove the create from curseforge
forever
and bring back RF
and EMC
i mean
WE LOVE PROJECT E
still exists
but FE are so op
tbh i enjoyed writing the v2 of the CC program
only tricky part was lua and the ui lib
Conversion rate RF to FE is in favor of FE
mmmmmmm
i used a lib called basalt
i never bothered with lua
i play ATM, they nerfed the fuck out of it in atm10
i gave up in 5 seconsd
Crazy
atm starts are pain, but once you get the mining dimension, well uh
mass excavation with quarries
true
at that point modpacks become a bit easier
i just hate spending a shit ton of time
like doing crafting
automated ones are so slow
yes
ill make one later then
can we like get a chat for just talking about modpacks lol
or adding nuclear reactors to SL

plugin base speedrun 1 minute :)
this was a goated pugin
Its so op
ikr
I always added it too my modpacks younger me "I MUST HAVE POWERRRRRRRRRRRRRRRRRRRR"
-goes into creative gets all armor- " I am power "
lol
that's young me for ya
like this is usually what i listen when playing a zombie modpack while cleaning skyscrapers
Stream/download my new album 'A Matter of Time' out now: https://laufey.ffm.to/amatteroftime
Pre-order Mei Mei The Bunny by Laufey: https://www.penguinrandomhouse.com/books/784206/mei-mei-the-bunny-by-laufey-illustrated-by-lauren-ohara/
UK/EU Tour tickets here: https://www.laufeymusic.com/tour/
Follow Laufey:
Spotify: https://laufey.ffm.to/sp...
This code doesnt work, please help :<
I call it on a firearm pickup but printing the value out before and after remains the same at 0, only after i pick it up and rack the slide to load a bullet into the chamber does it get set to 1
-# I want to spawn in a weapon that, when picked up, does not play that first "Chambering" animation and instead can instantly be used
Depends
Are they related
how many
alot
ok then seperate them into their uses
uhhhhh
it works afaik
but
its getting replaced by basegame uses in 15.0
so
northwood adding a good hint manager finally?
ah
lets you put on any part of the screen
hints will still exist
for basegame use
afaik
but displaykit replaces uses hints in a weird way
ah
Changing a firearms BaseFireRate to something slow still has the client play the full speed firing animation, hm
Is there a way to have multiple hints without using something like ruie
wait for 15.0 to release
or use ruei
or make your own ruei alternative
unfortunate
so tldr just wait for next game release
ruie is unoptimized as hell which is why I was asking
is it?
psure they put a decent effort into making sure its as well as is well
feasible for a hint framework
Our goal is to have an optimized server and ours averages out to about 60% cpu usage however when using ruie it jumped to 180% and there were noticeable stutters
hints be expensive
and when i ran my server it be shit specs
Found that out too at Bright's
but yeah it has to calculate everything about hints and their placement every time it needs to send one
so yea ruei tries to not alloc a bunch but yk
it has to do allat anyway
if only we didnt have to send UI data to clients
if only 15.0 had smth

DisplayKit is still gonna be networked UI
i mean true, but
server has to tell client stuff anyway
i mean
unless you implement all of it on client to handle it
15.0 as usual plaguing the game bc it’s not out yet
smh
Also hope they don’t get rid of gate a inside the facility with surface rework
that would kinda break my plugin
There wont be any client side scripts tho 
Why do you think Im working on my own LOL
wouldnt need to otherwise
I working on so many different things lel
Its like every day I do something completely different
so anyone have ideas for me to organize my custom items system itself?
i mean
organisation depends on each project usually
You can ignore all these
how can I check if someone has a certain item?
player.CurrentItem
I'm curious as to what circumstances you ran that benchmark under
like was it just a high pop server
or do you do Fpc stuff with plugins?
realistically speaking I think that the FpcServerPositionDistributor (or whatever it's called) would have more impact than just writing FpcPosition messages
that sees CURRENT holding item
not if they have it
in their inv
how many players for 3.7s on fpc
but tbh yeah fpc is the most expensive part of the game for sure
public static List<Vector3> LCZComputerRoom = new List<Vector3>
{
new Vector3(4.312499f, 0.8070374f, -2.073021f),
new Vector3(-2.394536f, 1.037529f, 1.169151f),
new Vector3(-2.484371f, 0.9867096f, -2.069115f)
};
public static List<Vector3> Pocket = new List<Vector3>
{
new Vector3(-0.2938356f, 1.010376f, 5.051668f)
};``` ts what I did for my plugin anything better? or nahhhh
for item spawn locs
uh
are those relative to room positions
if so, that's fine
did the same for Bright's
huge map of room types and room gameobject names to positions
easiest solution
was one of the devs for Bright's
Ah
left a few weeks ago
trying to see if inv has one of these is there anyway to do it easily?
make it a HashSet
new HashSet<ItemType>
like a list but it can only contain unique elements
makes lookup faster
then you can check if any of the inventory item types are in that set
so how do I actually do the lookup
pseucodoe because im drunk
uh ok
bool contains = inventory.Any(i => keycards.Contains(i.ItemType));
something like that
the i?







