Gamestudio Links
Zorro Links
Newest Posts
loading historical data 1st time
by AndrewAMD. 04/14/23 12:54
Trade at bar open
by juanex. 04/13/23 19:43
Bug in Highpass2 filter
by rki. 04/13/23 09:54
Adding Limit Orders For IB
by scatters. 04/11/23 16:16
FisherN
by rki. 04/11/23 08:38
AUM Magazine
Latest Screens
SHADOW (2014)
DEAD TASTE
Tactics of World War I
Hecknex World
Who's Online Now
3 registered members (AndrewAMD, The_Judge, Grant), 898 guests, and 5 spiders.
Key: Admin, Global Mod, Mod
Newest Members
rki, FranzIII, indonesiae, The_Judge, storrealba
18919 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
Page 2 of 3 1 2 3
Re: Problem with parameters when calling a function [Re: EvilSOB] #258036
03/27/09 09:38
03/27/09 09:38
Joined: Jan 2005
Posts: 605
Deutschland, NRW
G
garv3 Offline OP
User
garv3  Offline OP
User
G

Joined: Jan 2005
Posts: 605
Deutschland, NRW
Well,
the problem I'm facing is really strange. The error MUST be caused by the function call. I'm sure because the compiler says so and if I change...

function gegner_anvisieren(var luft_oder_boden){
to
function gegner_anvisieren(){

and

if(mein_anvisier_ziel_ptr.gegner_luft_oder_boden != luft_oder_boden)
to
if(mein_anvisier_ziel_ptr.gegner_luft_oder_boden != 1)

and call the function withou a parameter, everything works fine. So the function its self is fine. Just calling it using a parameter leads to a compiler error.

Last edited by garv3; 03/27/09 09:39.

GameStudio Version: A7 Pro v7.86
Re: Problem with parameters when calling a function [Re: garv3] #258041
03/27/09 10:00
03/27/09 10:00
Joined: Apr 2005
Posts: 4,506
Germany
F
fogman Offline
Expert
fogman  Offline
Expert
F

Joined: Apr 2005
Posts: 4,506
Germany
What happens when you do

gegner_anvisieren(1);

?


no science involved
Re: Problem with parameters when calling a function [Re: fogman] #258042
03/27/09 10:20
03/27/09 10:20
Joined: Jan 2005
Posts: 605
Deutschland, NRW
G
garv3 Offline OP
User
garv3  Offline OP
User
G

Joined: Jan 2005
Posts: 605
Deutschland, NRW
Same error!
Tried that before.


GameStudio Version: A7 Pro v7.86
Re: Problem with parameters when calling a function [Re: garv3] #258059
03/27/09 13:49
03/27/09 13:49
Joined: Feb 2008
Posts: 3,232
Australia
EvilSOB Offline
Expert
EvilSOB  Offline
Expert

Joined: Feb 2008
Posts: 3,232
Australia
Hmmm.
Can you post a copy/paste of ALL the defines in that source-file?

The whole source-file would be better of course.


"There is no fate but what WE make." - CEO Cyberdyne Systems Corp.
A8.30.5 Commercial
Re: Problem with parameters when calling a function [Re: EvilSOB] #258073
03/27/09 15:04
03/27/09 15:04
Joined: Jan 2005
Posts: 605
Deutschland, NRW
G
garv3 Offline OP
User
garv3  Offline OP
User
G

Joined: Jan 2005
Posts: 605
Deutschland, NRW
Well, the defines are placed in another file that is included. The whole File would be pretty huge. If you want all the code... well that's serveral thousand lines. And at this time I don't want to make it all public.
Currently I'm at work. When I'm back home, I'll post you some code that may help.

Thx anyway!


GameStudio Version: A7 Pro v7.86
Re: Problem with parameters when calling a function [Re: garv3] #258135
03/27/09 21:50
03/27/09 21:50
Joined: Jan 2005
Posts: 605
Deutschland, NRW
G
garv3 Offline OP
User
garv3  Offline OP
User
G

Joined: Jan 2005
Posts: 605
Deutschland, NRW
So here's some code of main.c
Code:
[...]
#include "defines.c"
[...]
#include "funktionen_einheiten.c"
#include "aktionen_einheiten.c"
[...]

Here some of the defines from defines.c
Code:
[...]
#define organisch 1
#define mechanisch 2

#define boden 1
#define luft 2
[...]

This is from aktionen_einheiten.c
Code:
[...]
action EoR_aktion(){
	[...]
	gegner_anvisieren(boden);
	[...]
}
[...]

And this is the function in funktionen_einheiten.c
Code:
[...]
function gegner_anvisieren(var luft_oder_boden){
	VECTOR temp;
	ENTITY* mein_anvisier_ziel_ptr;
	var mein_anvisier_ziel[3];
	while(me){
		if(my.einheiten_anvisierter_gegner != NULL && my.einheiten_status == bereit){
			if (ptr_for_handle(my.einheiten_anvisierter_gegner) != NULL && mein_anvisier_ziel_ptr != ptr_for_handle(my.einheiten_anvisierter_gegner)){
				mein_anvisier_ziel_ptr = ptr_for_handle(my.einheiten_anvisierter_gegner);
				if(mein_anvisier_ziel_ptr.gegner_luft_oder_boden != luft_oder_boden)
					mein_anvisier_ziel_ptr = NULL;
			}
			if(mein_anvisier_ziel_ptr != NULL){
				vec_set(temp, vector(mein_anvisier_ziel_ptr.x,mein_anvisier_ziel_ptr.y,mein_anvisier_ziel_ptr.z+mein_anvisier_ziel_ptr.gegner_hoehe/2));
				vec_sub(temp, vector(my.x,my.y,my.z+my.einheiten_hoehe));
				effect_local(anvisier_effekt, 1, vector(my.einheiten_anvisierlaser_start_x,my.einheiten_anvisierlaser_start_y,my.einheiten_anvisierlaser_start_z), temp);
			}
			if (ptr_for_handle(my.einheiten_anvisierter_gegner) == NULL){
				my.einheiten_anvisierter_gegner = NULL;
				mein_anvisier_ziel_ptr = NULL;	
			}
		}else{
			mein_anvisier_ziel_ptr = NULL;
		}
		wait(1);
	}
}
[...]


Any ideas?


GameStudio Version: A7 Pro v7.86
Re: Problem with parameters when calling a function [Re: garv3] #258138
03/27/09 22:14
03/27/09 22:14
Joined: Mar 2009
Posts: 112
Germany
K
KDuke Offline
Member
KDuke  Offline
Member
K

Joined: Mar 2009
Posts: 112
Germany
What happens if you try
Code:
var justTrying = 1;
gegner_anvisieren( justTrying);
?

The idea behind this is that the engine (as I read when dealing with overloaded functions) sometimes interprets variables and values as a wrong data type.

greetings
K-Duke

Last edited by KDuke; 03/27/09 22:16.

Using A7 Free
Click and join the 3dgs irc community!
Room: #3dgs
Re: Problem with parameters when calling a function [Re: KDuke] #258140
03/27/09 22:25
03/27/09 22:25
Joined: Jan 2005
Posts: 605
Deutschland, NRW
G
garv3 Offline OP
User
garv3  Offline OP
User
G

Joined: Jan 2005
Posts: 605
Deutschland, NRW
Well ... it runs!
So how may I solve this?

Thx!!!

EDIT:
Solved it by setting the variable in the function calling gegner_anvisieren():
Code:
var luftboden;
[...]
	luftboden = boden;
	gegner_anvisieren(luftboden);
[...]


I'm happy with that! Thank you!

Last edited by garv3; 03/27/09 22:29.

GameStudio Version: A7 Pro v7.86
Re: Problem with parameters when calling a function [Re: garv3] #258141
03/27/09 22:32
03/27/09 22:32
Joined: Mar 2009
Posts: 112
Germany
K
KDuke Offline
Member
KDuke  Offline
Member
K

Joined: Mar 2009
Posts: 112
Germany
Well you could exchange the defines with globals variables which hold the right value. This way you have to alter only little code.

so basically you exchange
Code:
#define luft 1

with
Code:
var luft = 1;

and so on.

maybe you could also use typecasting:
Code:
#define luft (var)1

though not sure if this works.


Using A7 Free
Click and join the 3dgs irc community!
Room: #3dgs
Re: Problem with parameters when calling a function [Re: KDuke] #258142
03/27/09 22:37
03/27/09 22:37
Joined: Mar 2009
Posts: 112
Germany
K
KDuke Offline
Member
KDuke  Offline
Member
K

Joined: Mar 2009
Posts: 112
Germany
No problem...

always glad to help others wink

greetings
K-Duke


Using A7 Free
Click and join the 3dgs irc community!
Room: #3dgs
Page 2 of 3 1 2 3

Moderated by  HeelX, Lukas, rayp, Rei_Ayanami, Superku, Tobias, TWO, VeT 

Gamestudio download | chip programmers | 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