Gamestudio Links
Zorro Links
Newest Posts
Zorro 2.70
by jcl. 09/29/25 09:24
optimize global parameters SOLVED
by dBc. 09/27/25 17:07
ZorroGPT
by TipmyPip. 09/27/25 10:05
assetHistory one candle shift
by jcl. 09/21/25 11:36
Plugins update
by Grant. 09/17/25 16:28
AUM Magazine
Latest Screens
Rocker`s Revenge
Stug 3 Stormartillery
Iljuschin 2
Galactic Strike X
Who's Online Now
1 registered members (TipmyPip), 18,633 guests, and 5 spiders.
Key: Admin, Global Mod, Mod
Newest Members
krishna, DrissB, James168, Ed_Love, xtns
19168 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
[ANet] Send char array with an event #340536
09/05/10 11:43
09/05/10 11:43
Joined: May 2009
Posts: 445
Peine, Germany
Razoron Offline OP
Senior Member
Razoron  Offline OP
Senior Member

Joined: May 2009
Posts: 445
Peine, Germany
Hi,
to reduce the bandwith, I decided to send data thew a achar array with an event.
The sending function:
Code:
function do_dmg(var to, var dmg)
{
	char sendchr[2];
	
	sendchr[0] = to;
	sendchr[1] = dmg;
	
	enet_clsend_event(EVENT_DAMAGE, sendchr, 2, SERVER);
}


The recieving function:
Code:
function server_damage(var sender, STRING* msg, var size)
{
	char data[2];
	data = _chr(msg);
	
	error(_str(data[0]));
	error(_str(data[1]));
	
	var victim = data[0];
	var dmg = data[1];
	
	BOOL found = FALSE;
	
	if(ent_player[victim] != NULL)
	{
		if(enet_ent_globpointer(ent_player[victim]) != ANET_ERROR)
		{
			ent_player[victim].armor -= dmg;
			enet_send_skills(enet_ent_globpointer(ent_player[victim]), 24, 24, BROADCAST);
			found = TRUE;
		}
	}
}



But I always get chinese characters.

Re: [ANet] Send char array with an event [Re: Razoron] #340543
09/05/10 13:48
09/05/10 13:48
Joined: Nov 2002
Posts: 913
Berlin, Germany
S
SchokoKeks Offline
User
SchokoKeks  Offline
User
S

Joined: Nov 2002
Posts: 913
Berlin, Germany
I think that this is not possible in lite-C (though it is in standard C)

Code:
data = _chr(msg);



Try using pointers or memcopy to get the value from msg->chars (or _chr(msg), should be the same).

Re: [ANet] Send char array with an event [Re: SchokoKeks] #340554
09/05/10 15:42
09/05/10 15:42
Joined: May 2009
Posts: 445
Peine, Germany
Razoron Offline OP
Senior Member
Razoron  Offline OP
Senior Member

Joined: May 2009
Posts: 445
Peine, Germany
Okay, making the char a pointer did it. Thanks.
For all interested:
Code:
function server_damage(var sender, STRING* msg, var size)
{
	char* data;
	data = _chr(msg);
	
	var victim = data[0];
	var dmg = data[1];
	
	BOOL found = FALSE;
	
	if(ent_player[victim] != NULL)
	{
		if(enet_ent_globpointer(ent_player[victim]) != ANET_ERROR)
		{
			ent_player[victim].armor -= dmg;
			enet_send_skills(enet_ent_globpointer(ent_player[victim]), 24, 24, BROADCAST);
			found = TRUE;
		}
	}
}




Moderated by  HeelX, Spirit 

Gamestudio download | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1