Problemas com a função Door_Close

Mapas, Editores e tudo mais relacionado a Edição de DooM você encontra aqui.
Regras do fórum
LEIA COM ATENÇÃO
Antes de postar alguma dúvida utilize a função de pesquisar do fórum, pois a sua dúvida talvez já tenha sido respondida!
Avatar do usuário
Fabio914
Mensagens: 1757
Registrado em: Dom Mai 21, 2006 4:38 pm
Answers: 0
18
Localização: Sampa/Sanca
Contato:

Problemas com a função Door_Close

Mensagem por Fabio914 »

Estou tentando fazer um esquema de airlock porém a função Door_Close não está funcionando... Alguém poderia dar uma olhada ai no código e me dizer o que está errado...

Código: Selecionar todos

//Airlock Script 
// by Fabio914

int air1 = 0;
int air2 = 1;

script 200 (void) { //Airlock 1

	if (air1==0){

	//Fechar porta ID 10
	Door_Close(10,45);
        delay(1);

        //Som de airlock (colocar depois)

        //Delay
	  delay(3*35);

	//Destrancar e abrir porta ID 12 
        Generic_Door(12,45,0,45,0);
	delay(1);

	//Iniciar oxigênio
	acs_execute(552,0);
	
	//Definir air1 igual a 1
	air1=1;
	acs_terminate(200,0);

	}

	if (air1==1){

	//Fechar porta ID 12
      Door_Close(12,45);
      delay(1);

        //Som de airlock (colocar depois)

        //Delay
	  delay(3*35);

	//Destrancar e abrir porta ID 10
	Generic_Door(10,45,0,45,0);
	delay(1);

	//Parar oxigênio
	acs_execute(554,0);
	
	//Definir air1 igual a 0
	air1=0;
	acs_terminate(200,0);

	} 


}

script 201 (void) { //Airlock 2

	if (air2==0){

	//Fechar porta ID 11
	Door_Close(11,45);
      delay(1);

        //Som de airlock (colocar depois)

        //Delay
	delay(3*35);

	//Destrancar e abrir porta ID 14
	Generic_Door(14,45,0,45,0);
	delay(1);

	//Iniciar oxigênio
	acs_execute(552,0);
	
	//Definir air2 igual a 1
	air2=1;
	acs_terminate(201,0);

	}

	if (air2==1){

	//Fechar porta ID 14
	Door_Close(14,45);
      delay(1);

        //Som de airlock (colocar depois)

        //Delay
	delay(3*35);

	//Destrancar e abrir porta ID 11
	Generic_Door(11,45,0,45,0);
	delay(1);

	//Parar oxigênio
	acs_execute(554,0);
	
	//Definir air2 igual a 0
	air2=0;
	acs_terminate(201,0);

	} 


} 

script 202 (void){
Generic_Door(12,45,0,45,0);
}

script 203 (void){
Generic_Door(10,45,0,45,0);
}

script 204 (void){
Generic_Door(11,45,0,45,0);
}

script 205 (void){
Generic_Door(14,45,0,45,0);
}
Imp Hunter

Mensagem por Imp Hunter »

Qual é o problema?

Ela não fecha? :|
Avatar do usuário
Fabio914
Mensagens: 1757
Registrado em: Dom Mai 21, 2006 4:38 pm
Answers: 0
18
Localização: Sampa/Sanca
Contato:

Mensagem por Fabio914 »

Imp Hunter escreveu:Qual é o problema?

Ela não fecha? :|
Exatamente xD

E se ela não fecha , por um pequeno período de tempo eu posso acabar ficando com as 2 portas da airlock abertas , ai o script do Oxigênio já vai ser ativado e se o jogador voltar pra dentro ele acaba ficando com oxigênio mas no lado de dentro...
Projetos em andamento
the Core
Eclipse

Projetos parados
Doom 3 on GZDoom
FSD Project

PC
AMD Athlon 64 X2 5200+ (2x 2.6Ghz)
2GB RAM (2x 1GB DDR2)
240GB (160GB SATA + 80GB SATA)
XFX nVidia GeForce 8600 GT (600mhz 256mb)
Placa Mãe ASUS M2N4 SLI (2x PCI-E 16x SLI, 4x DDR2 800, nForce 4)
Fonte 500W reais (esqueci o nome da marca)
Monitor LG Flatron 19'' LCD
Mauricio Rocks
Mensagens: 779
Registrado em: Sex Jan 05, 2007 3:55 am
Answers: 0
18

Mensagem por Mauricio Rocks »

Fabio, não tenho o minima ideia do porque disso.. anyway, no airlock, vamos usar polyobjects certo? [pra porta abrir no meio].. vc sabe construir eles? se não, eu te ensino.. depois pensamos num jeito de calcular o tempo certo de cada ação... mas se for soh pra testar, use Ceiling_LowerToNearest ou Ceiling_LowerByValue, ok?
Avatar do usuário
DU0
Mensagens: 6690
Registrado em: Sáb Abr 01, 2006 6:59 am
Answers: 0
19
Localização: Deimos Lab.
Contato:

Mensagem por DU0 »

Bom, aomenos o bug é realista.. Se duas airlocks ficassem abertas ao mesmo tempo, a base ia ser virada do avesso pela despressurização #D
Jogando atualmente:
Xbox 360: Ninja Gaiden Black
Xbox One: Need for Speed: Hot Pursuit, Yakuza 3
PlayStation 2: Fatal Frame 3: The Tormented
PlayStation 3: RE: The Darkside Chronicles, RE: The Umbrella Chronicles
Nintendo Switch: Phantasy Star, SIFU
Avatar do usuário
Fabio914
Mensagens: 1757
Registrado em: Dom Mai 21, 2006 4:38 pm
Answers: 0
18
Localização: Sampa/Sanca
Contato:

Mensagem por Fabio914 »

DU0 escreveu:Bom, aomenos o bug é realista.. Se duas airlocks ficassem abertas ao mesmo tempo, a base ia ser virada do avesso pela despressurização #D
xD
Rocks escreveu:Fabio, não tenho o minima ideia do porque disso.. anyway, no airlock, vamos usar polyobjects certo? [pra porta abrir no meio].. vc sabe construir eles? se não, eu te ensino.. depois pensamos num jeito de calcular o tempo certo de cada ação... mas se for soh pra testar, use Ceiling_LowerToNearest ou Ceiling_LowerByValue, ok?
Certo , tentarei com esses... :wink:
Projetos em andamento
the Core
Eclipse

Projetos parados
Doom 3 on GZDoom
FSD Project

PC
AMD Athlon 64 X2 5200+ (2x 2.6Ghz)
2GB RAM (2x 1GB DDR2)
240GB (160GB SATA + 80GB SATA)
XFX nVidia GeForce 8600 GT (600mhz 256mb)
Placa Mãe ASUS M2N4 SLI (2x PCI-E 16x SLI, 4x DDR2 800, nForce 4)
Fonte 500W reais (esqueci o nome da marca)
Monitor LG Flatron 19'' LCD
Avatar do usuário
MegaManx3
Mensagens: 1915
Registrado em: Ter Fev 21, 2006 4:38 pm
Answers: 0
19
Localização: Valparaiso de Goias
Gender:
Contato:
MegaManx3’s avatar
Loading…

Mensagem por MegaManx3 »

door open,depois door close,coloque cada comando,e coloca apenas um pequeno delay mas variaveis que vc quer .
Jogando :mstongue:

Voltar para “Dúvidas e tutoriais”