Comments (5)
With v2, I'm contemplating fully removing function objects in favour of the async functions (RemoteEvent driven functions). Much friendlier for tools like NoahWillCode's event log, and also actually supports using async callbacks and calling clients.
from rbx-net.
The middleware in RbxNet is typed similarly to Rodux now.
e.g. converting an "id" to an NPC
const toNPC: Middleware<[NPCEntity], [string]> = (next) => {
return (sender, npcId) => {
const npc = NPCManager.GetNPCById(npcId);
if (npc) {
next(sender, npc); // this will pass the NPC as an argument
}
// If `next` is never called, it will silently fail. I'm considering a sort of "reject" function as well.
}
};
const TradeWithNPC = new Net.ServerEvent("TradeWithNPC", [Net.Typed(t.string), toNPC]);
TradeWithNPC.Connect((player, npc) => {
// npc is of type NPCEntity
});
from rbx-net.
I'm considering now moving the connect-related middleware to the connect function itself. Probably a more sensible option. :?
from rbx-net.
Hey
A couple of points on the state of 2.x - It looks great!
- The majority of the code seems to need to be wrapped with
/* eslint-disable roblox-ts/no-any */
to stop fatal linting errors (for default rules from roblox-ts) - i assume this is because the types are not finalised yet? i might be able to help if thats the case. - It looks like git is out of sync with NPM and/or the docs are versioned wrong -
2.0.0.alpha.7
is the latest version on master at git but NPM has2.0.0.alpha.6
I submited a docs-only pull request to fix up some errors in the 2.x docs as well :)
great work!
from rbx-net.
Hey
A couple of points on the state of 2.x - It looks great!
* The majority of the code seems to need to be wrapped with `/* eslint-disable roblox-ts/no-any */` to stop fatal linting errors (for default rules from roblox-ts) - i assume this is because the types are not finalised yet? i might be able to help if thats the case. * It looks like git is out of sync with NPM and/or the docs are versioned wrong - `2.0.0.alpha.7` is the latest version on master at git but NPM has `2.0.0.alpha.6`
I submited a docs-only pull request to fix up some errors in the 2.x docs as well :)
great work!
Haven't run into any linting issues with the roblox-ts linter, although it is a bit buggy and usually vscode requires a restart if that happens.
The NPM version should be updated to 2.0.0-rc.0 in a moment. This should be a more akin to what the release will look like. (which includes changes from .7
)
from rbx-net.
Related Issues (20)
- Namespaced remotes created incorrectly HOT 2
- Attempt to call a nil value when Net.CreateDefinitions HOT 1
- Attempt to call a nil value (upvalue 'GeneratePlate') HOT 1
- [Docs] Documentation for Namespaces HOT 1
- TS2515: Non-abstract class does not implement inherited abstract member from class
- TS2536: Type '"Definitions"' cannot be used to index type 'T'.
- Dropped requests from middleware remain in 'Started' state for AsyncFunctions. HOT 3
- Add configurable location for _NetManaged folder. HOT 2
- Compile time _NetManaged folder content
- Cannot use namespaces HOT 1
- Update the Wally package version HOT 1
- Troubles with luau types HOT 5
- Client:Get(remoteId) always waits one Heartbeat HOT 1
- Connecting a running game to a rojo server deletes events HOT 1
- Unable to create ServerFunctions within namespaces HOT 1
- https://rbxnet.australis.dev/ doc site unreachable HOT 1
- Unreliable Remotes HOT 1
- Net v4.0 HOT 1
- Argument of type 'string' is not assignable to parameter of type 'never'.ts(2345) HOT 1
- Why is my Remotes.Server.OnFunction complaining about Argument of type 'string' is not assignable to parameter of type 'never'? HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rbx-net.