Files
hanabi/src/main.odin
T
2026-05-24 20:09:54 +02:00

40 lines
893 B
Odin

package hanabi
import "core:fmt"
import "core:net"
import "core:os"
USAGE :: `usage: hanabi (-c[onnect]:<server-ip:port> | -h[ost]:<p1> <p2> [p3] [p4] [p5])
example host: \
$ hanabi -h 127.0.0.1:42069 127.0.0.1:42070
example player: \
$ hanabi -c 127.0.0.1:42069`
main :: proc() {
n := len(os.args) - 2
switch os.args[1] {
case "-c", "-connect", "--connect":
assert(n == 1)
addr, ok := net.parse_endpoint(os.args[2])
if !ok do panic(fmt.tprintln("failed to parse host endpoint:", os.args[2]))
run_client(addr)
case "-H", "-host", "--host":
assert(2 <= n && n <= 5)
addrs: [dynamic]net.Endpoint
defer delete(addrs)
for addr_str in os.args[2:] {
addr, ok := net.parse_endpoint(os.args[2])
if !ok do panic(fmt.tprintln("failed to parse player endpoint:", addr_str))
append(&addrs, addr)
}
run_server(addrs[:])
case:
fmt.println(USAGE)
return
}
}