Difference between revisions of "lua-enet (日本語)"

m (enet:host_create -> enet.host_create)
m (translation updated.)
 
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 バインディングです。
+
lua-enet は ENet の一部機能を実装したシンプルな Lua バインディングです。
  
 
ENet の目的は UDP (User Datagram Protocol) の上位に ゲーム用途の比較的薄くて、単純かつ頑丈なネットワーク通信層を提供することです。主な特徴は信頼性のある選択肢、パケットの順序による配達です。
 
ENet の目的は UDP (User Datagram Protocol) の上位に ゲーム用途の比較的薄くて、単純かつ頑丈なネットワーク通信層を提供することです。主な特徴は信頼性のある選択肢、パケットの順序による配達です。
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 から使用可能
このモジュールは以前のバージョンでは非対応です。


O.png こちらから 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

関連

そのほかの言語