Gamestudio Links
Zorro Links
Newest Posts
Z9 getting Error 058
by madpower2000. 07/22/26 14:01
ZorroGPT
by TipmyPip. 07/21/26 17:54
New Zorro version 3.11
by jcl. 07/21/26 13:42
Lapsa's very own thread
by Lapsa. 07/18/26 13:40
Purchase A8 full licence version
by ukgamer. 07/17/26 05:52
AUM Magazine
Latest Screens
Dorifto samurai
Shadow 2
Rocker`s Revenge
Stug 3 Stormartillery
Who's Online Now
6 registered members (AndrewAMD, madpower2000, Quad, VoroneTZ, TipmyPip, 1 invisible), 1,674 guests, and 3 spiders.
Key: Admin, Global Mod, Mod
Newest Members
riggi89, shuhari, KD1990, Ephraim, Student_64151
19223 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
Fehlerbehebung aber wie? #395483
02/23/12 21:33
02/23/12 21:33
Joined: Feb 2012
Posts: 16
M
MODinCLite Offline OP
Newbie
MODinCLite  Offline OP
Newbie
M

Joined: Feb 2012
Posts: 16
Code:
void bullet_create(VECTOR* vpos,VECTOR* vang,var speed, int demage)
{
	var alive = 3000;
	VECTOR pos,temp,vel;
	
	vec_set(pos,vpos);
	vec_set(vel,vector(speed,0,0));
	vec_rotate(vel,vang);

	while(alive > 0)
	{
		// calculate new position
		vec_set(temp,vel);
		vec_scale(temp,time_step);
		vec_add(temp,pos);
		c_trace(pos,temp,IGNORE_PASSABLE | USE_POLYGON); // optional: SCAN_TEXTURE
		if(trace_hit)
		{
			if (you){
				int i = 0;
				while (i <= enemyCounter){
					if (enemyName[i] == you){
						if (enemyHelth[i] > 0){
							enemyHelth[i] -= demage;
						}else{
							ent_remove(you);
						}
					}
					i += 1;
				}
			}
			alive = 0;
		}
		effect(p_bullet,1,pos,vel); // you may want to shorten vel on impact
		vec_set(pos,temp); // move to new position

		alive -= time_step;
		wait(1);
	}
}


function blockRocket(){
	blockRocketBool = 1;
	wait(60);
	blockRocketBool = 0;
}

action setName(){
	enemyName[enemyCounter] = me;
	enemyHelth[enemyCounter] = 100;
	enemyCounter += 1;
}

function main( )
{
	initGame();
	ent_create("rocket.mdl", vector(0,0,0), camera_follow);
	ent_create("rocket.mdl", vector(200,200,0), setName);
	ent_create("rocket.mdl", vector(100,300,0), setName);
	while (1)
	{
			
		VECTOR move_speed;
		while(1)
		{
			VECTOR temp;
			vec_set(move_speed.x,nullvector);
			move_speed.x = 100 * (key_w - key_s) * time_step; 
			move_speed.y = 5 * (key_a - key_d) * time_step;   
			c_move(car,move_speed.x, nullvector,GLIDE);      
			
			mouse_pos.x = mouse_cursor.x;
			mouse_pos.y = mouse_cursor.y;
			car.pan -= mouse_force.x;
			car.tilt += mouse_force.y;
   		if(mouse_left)
			{
				if (mag_MG > 0){
					vec_set(temp,vector(235,-20,-43));
					vec_rotate(temp,camera.pan);
					vec_add(temp,camera.x);
					bullet_create(temp,camera.pan,500, 10);
					wait(0.2);
					vec_set(temp,vector(235,20,-43));
					vec_rotate(temp,camera.pan);
					vec_add(temp,camera.x);
					bullet_create(temp,camera.pan,500, 10);
					mag_MG -= 2;
				}else{
					if (rel_MG > 0){
						relode();
					}
				}
			}
			if (key_r){
				relode();
			}
			if (key_f && blockRocketBool == 0){
					vec_set(temp,vector(210,0,-43));
					vec_rotate(temp,camera.pan);
					vec_add(temp,camera.x);
					bullet_create(temp,camera.pan,500, 51);
					blockRocket();
			}
			draw_text(str_printf(NULL,
         "%d fps | %d | %d | %d",
         (long)(16/time_frame),(long)mag_MG, (long)rel_MG, (long)youS),
         5,5,COLOR_GREEN);
         wait(1);
		}
		wait (1);
	}
}




Wo liegt hier der Fehler. Immer bei dem ent_remove kommt eine Fehlermeldung. Wenn man aber auf ok klickt geht das Programm einfach weiter.

Mfg MODinCLite

Last edited by JustSid; 02/23/12 23:36. Reason: Code Tags hinzugefügt
Re: Fehlerbehebung aber wie? [Re: MODinCLite] #395484
02/23/12 21:41
02/23/12 21:41
Joined: Jan 2002
Posts: 4,225
Germany / Essen
Uhrwerk Offline
Expert
Uhrwerk  Offline
Expert

Joined: Jan 2002
Posts: 4,225
Germany / Essen
Bitte formatiere Deinen Code ordentlich und verwende die Code Tags. Wie lautet die Fehlermeldung denn?

So einfach mal geraten: Es könnte sein, dass ent_remove mehrfach für das gleiche you aufgerufen wird, nämlich dann, wenn enemyName duplicate enthält.


Always learn from history, to be sure you make the same mistakes again...
Re: Fehlerbehebung aber wie? [Re: Uhrwerk] #395504
02/24/12 06:25
02/24/12 06:25
Joined: Feb 2012
Posts: 16
M
MODinCLite Offline OP
Newbie
MODinCLite  Offline OP
Newbie
M

Joined: Feb 2012
Posts: 16
Entschuldigung wegen des Codes aber ich bin noch nicht so erfahren was das betrift. Ich habe es übrigens gelöst deine Vermutung war fast richtig ich muss statt while (i <= enemyCounter){
while (i < enemyCounter){ ansonsten ruft er zum schluss noch ein Objekt mit enemyName[3] auf wälches nicht gesetzt ist.


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

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