gamemaker studio socket例子

来源:互联网 发布:a站mac 编辑:程序博客网 时间:2024/06/06 03:33

客户端:

client_socket = network_create_socket(network_socket_tcp);var server = network_connect(client_socket, "127.0.0.1", 5200);if(server < 0) show_message("Could not connect! Try turning on the server?");else{ //Send string    var t_buffer = buffer_create(256, buffer_grow, 1);    buffer_seek(t_buffer, buffer_seek_start, 0);    buffer_write(t_buffer , buffer_string, "Hello");    network_send_packet(client_socket, t_buffer, buffer_tell(t_buffer));    buffer_delete(t_buffer);}

服务端:

server_socket = network_create_server(network_socket_tcp, 5200, 5);

异步网络事件处理:

var n_id = ds_map_find_value(async_load, "id");if(n_id == server_socket){    var t = ds_map_find_value(async_load, "type");    socketlist = ds_list_create();    if(t == network_type_connect){        var sock = ds_map_find_value(async_load, "socket");        ds_list_add(socketlist, sock);    }    if(n_id == sock){        var t_buffer = ds_map_find_value(async_load, "buffer");         var cmd_type = buffer_read(t_buffer, buffer_string);        show_message(cmd_type);    }    //show_message("Something happened!");}

参考文章:
https://www.reddit.com/r/gamemaker/comments/2gtd05/gamemaker_networking_features_any_good/

0 0
原创粉丝点击