Difference between revisions of "lua-enet (日本語)"
m (→用例: Changed concatination to comma (Would not let me concatinate "event.peer", which is a userdata - tested with 0.10.1)) |
m (translation updated.) |
||
(One intermediate revision by one other user not shown) | |||
Line 1: | Line 1: | ||
− | {{newin (日本語)|[[0.9.0]]|090|type=モジュール}} | + | {{newin (日本語)|[[0.9.0 (日本語)|0.9.0]]|090|type=モジュール}} |
− | {{notice|[http://leafo.net/lua-enet/ こちら]から lua-enet 用の公式説明書を利用可能です。ENet の特徴は[http://enet.bespin.org/Features.html ホームページ]にて一覧化されています。公式説明書には誤りがある場合があります。この Wiki にある説明書は LÖVE | + | {{notice|[http://leafo.net/lua-enet/ こちら]から lua-enet 用の公式説明書を利用可能です。ENet の特徴は[http://enet.bespin.org/Features.html ホームページ]にて一覧化されています。公式説明書には誤りがある場合があります。この Wiki にある説明書は LÖVE の実装を反映しているものであり、ここでの記載事項は安全のために従うべきものです。}} |
− | lua-enet は ENet | + | lua-enet は ENet の一部機能を実装したシンプルな Lua バインディングです。 |
ENet の目的は UDP (User Datagram Protocol) の上位に ゲーム用途の比較的薄くて、単純かつ頑丈なネットワーク通信層を提供することです。主な特徴は信頼性のある選択肢、パケットの順序による配達です。 | ENet の目的は UDP (User Datagram Protocol) の上位に ゲーム用途の比較的薄くて、単純かつ頑丈なネットワーク通信層を提供することです。主な特徴は信頼性のある選択肢、パケットの順序による配達です。 | ||
Line 29: | Line 29: | ||
|- | |- | ||
|- | |- | ||
− | |[[enet | + | |[[enet.host_create (日本語)| host_create]] |
|新規ホストを返します。 | |新規ホストを返します。 | ||
|- | |- | ||
Line 40: | Line 40: | ||
<source lang="Lua"> | <source lang="Lua"> | ||
-- server.lua | -- server.lua | ||
− | require "enet" | + | local enet = require "enet" |
local host = enet.host_create("localhost:6789") | local host = enet.host_create("localhost:6789") | ||
while true do | while true do | ||
Line 49: | Line 49: | ||
event.peer:send( "pong" ) | event.peer:send( "pong" ) | ||
elseif event.type == "connect" then | elseif event.type == "connect" then | ||
− | print(event.peer, " connected.") | + | print(event.peer, "connected.") |
elseif event.type == "disconnect" then | elseif event.type == "disconnect" then | ||
− | print(event.peer, " disconnected.") | + | print(event.peer, "disconnected.") |
end | end | ||
event = host:service() | event = host:service() | ||
Line 61: | Line 61: | ||
<source lang="Lua"> | <source lang="Lua"> | ||
-- client.lua | -- client.lua | ||
− | require "enet" | + | local enet = require "enet" |
local host = enet.host_create() | local host = enet.host_create() | ||
local server = host:connect("localhost:6789") | local server = host:connect("localhost:6789") | ||
Line 71: | Line 71: | ||
event.peer:send( "ping" ) | event.peer:send( "ping" ) | ||
elseif event.type == "connect" then | elseif event.type == "connect" then | ||
− | print(event.peer, " connected.") | + | print(event.peer, "connected.") |
event.peer:send( "ping" ) | event.peer:send( "ping" ) | ||
elseif event.type == "disconnect" then | elseif event.type == "disconnect" then | ||
− | print(event.peer, " disconnected.") | + | print(event.peer, "disconnected.") |
end | end | ||
event = host:service() | event = host:service() | ||
Line 85: | Line 85: | ||
* [[socket (日本語)]] | * [[socket (日本語)]] | ||
== そのほかの言語 == | == そのほかの言語 == | ||
− | {{i18n|lua-enet}} | + | {{i18n (日本語)|lua-enet}} |
[[Category:Libraries (日本語)]] | [[Category:Libraries (日本語)]] | ||
{{#set:Description=多人数同時対戦ゲーム用のネットワーク化モジュールです。}} | {{#set:Description=多人数同時対戦ゲーム用のネットワーク化モジュールです。}} |
Latest revision as of 07:45, 14 June 2019
LÖVE 0.9.0 から使用可能 |
このモジュールは以前のバージョンでは非対応です。 |
こちらから lua-enet 用の公式説明書を利用可能です。ENet の特徴はホームページにて一覧化されています。公式説明書には誤りがある場合があります。この Wiki にある説明書は LÖVE の実装を反映しているものであり、ここでの記載事項は安全のために従うべきものです。 |
lua-enet は ENet の一部機能を実装したシンプルな Lua バインディングです。
ENet の目的は UDP (User Datagram Protocol) の上位に ゲーム用途の比較的薄くて、単純かつ頑丈なネットワーク通信層を提供することです。主な特徴は信頼性のある選択肢、パケットの順序による配達です。
ライブラリの柔軟性、可搬性、容易な組み込み性を維持するために認証、ロビーイング、サーバー発見、暗号化、またはその他の特定アプリケーション用途と類似したタスクといたENet における特定の高度なネットワーク機能を省略しています。
型
型 | 解説 |
---|---|
host | ENet ホストはピアとの通信をします。 |
peer | ENet のピアにてデータ・パケットの送信または受信を行います。 |
event | イベントに関する情報を内包する単純なテーブル。 |
関数
関数 | 解説 |
---|---|
host_create | 新規ホストを返します。 |
linked_version | 搭載されている ENet のバージョンを文字列として返します。 |
用例
server.lua
-- server.lua
local enet = require "enet"
local host = enet.host_create("localhost:6789")
while true do
local event = host:service(100)
while event do
if event.type == "receive" then
print("Got message: ", event.data, event.peer)
event.peer:send( "pong" )
elseif event.type == "connect" then
print(event.peer, "connected.")
elseif event.type == "disconnect" then
print(event.peer, "disconnected.")
end
event = host:service()
end
end
client.lua
-- client.lua
local enet = require "enet"
local host = enet.host_create()
local server = host:connect("localhost:6789")
while true do
local event = host:service(100)
while event do
if event.type == "receive" then
print("Got message: ", event.data, event.peer)
event.peer:send( "ping" )
elseif event.type == "connect" then
print(event.peer, "connected.")
event.peer:send( "ping" )
elseif event.type == "disconnect" then
print(event.peer, "disconnected.")
end
event = host:service()
end
end
関連
そのほかの言語
Dansk –
Deutsch –
English –
Español –
Français –
Indonesia –
Italiano –
Lietuviškai –
Magyar –
Nederlands –
Polski –
Português –
Română –
Slovenský –
Suomi –
Svenska –
Türkçe –
Česky –
Ελληνικά –
Български –
Русский –
Српски –
Українська –
עברית –
ไทย –
日本語 –
正體中文 –
简体中文 –
Tiếng Việt –
한국어
詳細情報