Jump to content

Photo

Custom PitWarp Animation/SFX

FFC Script Delay Warp Play SFX init Link Falls From Ceiling

  • Please log in to reply
21 replies to this topic

#16 Bagu

Bagu

    Fandomizer

  • Members
  • Real Name:A.I. Bot Bottomheimer
  • Location:Germany

Posted 12 December 2019 - 06:15 PM

const int dayLength = 5; //Length of a day or night in minutes;
const int I_NIGHT = 45; //An unused item ID, placed into Link's inventory or removed to change day/night
const int dayDMAP0 = 0; //Daytime DMap #0
const int nightDMAP0 = 1; //Night DMap #0
const int dayDMAP1 = -1; //Daytime DMap #1
const int nightDMAP1 = -1; //Night DMap #1

const int dayDMAP24 = 24; //Daytime DMap #2
const int nightDMAP24 = 25; //Night DMap #2
const int dayDMAP25 = -25; //Daytime DMap #3
const int nightDMAP25 = -25; //Night DMap #3

global script DayNightOW

{void changeNight(bool cycle)
		{if(cycle){
			if(Link->Item[I_NIGHT])Link->Item[I_NIGHT]=false;
			else{Link->Item[I_NIGHT]=true;}
		}if(Game->GetCurScreen()!=128){
		if(dayDMAP0>=0&&nightDMAP0>=0){
			if(Game->GetCurDMap()==dayDMAP0 && Link->Item[I_NIGHT]){
				Link->PitWarp(nightDMAP0, Game->GetCurScreen());
			} else if(Game->GetCurDMap()==nightDMAP0 && !Link->Item[I_NIGHT]){
				Link->PitWarp(dayDMAP0, Game->GetCurScreen());
			}
		}
		if(dayDMAP1>=0&&nightDMAP1>=0){
			if(Game->GetCurDMap()==dayDMAP1 && Link->Item[I_NIGHT]){
				Link->PitWarp(nightDMAP1, Game->GetCurScreen());
			} else if(Game->GetCurDMap()==nightDMAP1 && !Link->Item[I_NIGHT]){
				Link->PitWarp(dayDMAP1, Game->GetCurScreen());
			}
		}
				if(dayDMAP24>=24&&nightDMAP24>=24){
			if(Game->GetCurDMap()==dayDMAP24 && Link->Item[I_NIGHT]){
				Link->PitWarp(nightDMAP24, Game->GetCurScreen());
			} else if(Game->GetCurDMap()==nightDMAP24 && !Link->Item[I_NIGHT]){
				Link->PitWarp(dayDMAP24, Game->GetCurScreen());
			}
		}
		if(dayDMAP25>=24&&nightDMAP25>=24){
			if(Game->GetCurDMap()==dayDMAP25 && Link->Item[I_NIGHT]){
				Link->PitWarp(nightDMAP25, Game->GetCurScreen());
			} else if(Game->GetCurDMap()==nightDMAP25 && !Link->Item[I_NIGHT]){
				Link->PitWarp(dayDMAP25, Game->GetCurScreen());
		}
		}// You can copy this entire IF statement and change it to, say, dayDMAP2 and nightDMAP3 to create an 
		 // additional DMap to have a day/night cycle for. This can be done indefinitely.
		
		}
	}

	void run(){
		int frame = 0;
		int min = 0;
		while(true){
			bool cycle = false;
			if(min==dayLength){cycle=true;min=0;}
			changeNight(cycle);
			Waitdraw();
			frame++;
			if(frame==3600){
				frame=0;
				min++;
			}
			Waitframe();
		}
	}



#17 Avaro

Avaro

    o_o

  • Members
  • Real Name:Robin
  • Location:Germany

Posted 13 December 2019 - 04:35 AM

const int dayLength = 5; //Length of a day or night in minutes;
const int I_NIGHT = 45; //An unused item ID, placed into Link's inventory or removed to change day/night
const int dayDMAP0 = 0; //Daytime DMap #0
const int nightDMAP0 = 1; //Night DMap #0
const int dayDMAP1 = -1; //Daytime DMap #1
const int nightDMAP1 = -1; //Night DMap #1

const int dayDMAP24 = 24; //Daytime DMap #2
const int nightDMAP24 = 25; //Night DMap #2
const int dayDMAP25 = -25; //Daytime DMap #3
const int nightDMAP25 = -25; //Night DMap #3

global script DayNightOW

{void changeNight(bool cycle)
		{if(cycle){
			if(Link->Item[I_NIGHT])Link->Item[I_NIGHT]=false;
			else{Link->Item[I_NIGHT]=true;}
		}if(Game->GetCurScreen()!=128){
		if(dayDMAP0>=0&&nightDMAP0>=0){
			if(Game->GetCurDMap()==dayDMAP0 && Link->Item[I_NIGHT]){
				Link->PitWarp(nightDMAP0, Game->GetCurScreen());
			} else if(Game->GetCurDMap()==nightDMAP0 && !Link->Item[I_NIGHT]){
				Link->PitWarp(dayDMAP0, Game->GetCurScreen());
			}
		}
		if(dayDMAP1>=0&&nightDMAP1>=0){
			if(Game->GetCurDMap()==dayDMAP1 && Link->Item[I_NIGHT]){
				Link->PitWarp(nightDMAP1, Game->GetCurScreen());
			} else if(Game->GetCurDMap()==nightDMAP1 && !Link->Item[I_NIGHT]){
				Link->PitWarp(dayDMAP1, Game->GetCurScreen());
			}
		}
				if(dayDMAP24>=24&&nightDMAP24>=24){
			if(Game->GetCurDMap()==dayDMAP24 && Link->Item[I_NIGHT]){
				Link->PitWarp(nightDMAP24, Game->GetCurScreen());
			} else if(Game->GetCurDMap()==nightDMAP24 && !Link->Item[I_NIGHT]){
				Link->PitWarp(dayDMAP24, Game->GetCurScreen());
			}
		}
		if(dayDMAP25>=24&&nightDMAP25>=24){
			if(Game->GetCurDMap()==dayDMAP25 && Link->Item[I_NIGHT]){
				Link->PitWarp(nightDMAP25, Game->GetCurScreen());
			} else if(Game->GetCurDMap()==nightDMAP25 && !Link->Item[I_NIGHT]){
				Link->PitWarp(dayDMAP25, Game->GetCurScreen());
		}
		}// You can copy this entire IF statement and change it to, say, dayDMAP2 and nightDMAP3 to create an 
		 // additional DMap to have a day/night cycle for. This can be done indefinitely.
		
		}
	}

	void run(){
		int frame = 0;
		int min = 0;
		MooshPit_Init();
		while(true){
			MooshPit_Update();
			bool cycle = false;
			if(min==dayLength){cycle=true;min=0;}
			changeNight(cycle);
			Waitdraw();
			frame++;
			if(frame==3600){
				frame=0;
				min++;
			}
			Waitframe();
		}
	}


Here is the combined global script.


  • Bagu likes this

#18 Bagu

Bagu

    Fandomizer

  • Members
  • Real Name:A.I. Bot Bottomheimer
  • Location:Germany

Posted 14 December 2019 - 03:14 PM

Thank you so much
...sorry for late reply
I was very buisy yesterday.
I'm gonna try that, when I'm home again.
I'll give a short feedback after

#19 Bagu

Bagu

    Fandomizer

  • Members
  • Real Name:A.I. Bot Bottomheimer
  • Location:Germany

Posted 15 December 2019 - 11:24 AM

Thank you so much
...sorry for late reply
I was very buisy yesterday.
I'm gonna try that, when I'm home again.
I'll give a short feedback after

 

const int dayLength = 5; //Length of a day or night in minutes;
const int I_NIGHT = 45; //An unused item ID, placed into Link's inventory or removed to change day/night
const int dayDMAP0 = 0; //Daytime DMap #0
const int nightDMAP0 = 1; //Night DMap #0
const int dayDMAP1 = -1; //Daytime DMap #1
const int nightDMAP1 = -1; //Night DMap #1

const int dayDMAP24 = 24; //Daytime DMap #2
const int nightDMAP24 = 25; //Night DMap #2
const int dayDMAP25 = -25; //Daytime DMap #3
const int nightDMAP25 = -25; //Night DMap #3

global script DayNightOW

{void changeNight(bool cycle)
		{if(cycle){
			if(Link->Item[I_NIGHT])Link->Item[I_NIGHT]=false;
			else{Link->Item[I_NIGHT]=true;}
		}if(Game->GetCurScreen()!=128){
		if(dayDMAP0>=0&&nightDMAP0>=0){
			if(Game->GetCurDMap()==dayDMAP0 && Link->Item[I_NIGHT]){
				Link->PitWarp(nightDMAP0, Game->GetCurScreen());
			} else if(Game->GetCurDMap()==nightDMAP0 && !Link->Item[I_NIGHT]){
				Link->PitWarp(dayDMAP0, Game->GetCurScreen());
			}
		}
		if(dayDMAP1>=0&&nightDMAP1>=0){
			if(Game->GetCurDMap()==dayDMAP1 && Link->Item[I_NIGHT]){
				Link->PitWarp(nightDMAP1, Game->GetCurScreen());
			} else if(Game->GetCurDMap()==nightDMAP1 && !Link->Item[I_NIGHT]){
				Link->PitWarp(dayDMAP1, Game->GetCurScreen());
			}
		}
				if(dayDMAP24>=24&&nightDMAP24>=24){
			if(Game->GetCurDMap()==dayDMAP24 && Link->Item[I_NIGHT]){
				Link->PitWarp(nightDMAP24, Game->GetCurScreen());
			} else if(Game->GetCurDMap()==nightDMAP24 && !Link->Item[I_NIGHT]){
				Link->PitWarp(dayDMAP24, Game->GetCurScreen());
			}
		}
		if(dayDMAP25>=24&&nightDMAP25>=24){
			if(Game->GetCurDMap()==dayDMAP25 && Link->Item[I_NIGHT]){
				Link->PitWarp(nightDMAP25, Game->GetCurScreen());
			} else if(Game->GetCurDMap()==nightDMAP25 && !Link->Item[I_NIGHT]){
				Link->PitWarp(dayDMAP25, Game->GetCurScreen());
		}
		}// You can copy this entire IF statement and change it to, say, dayDMAP2 and nightDMAP3 to create an 
		 // additional DMap to have a day/night cycle for. This can be done indefinitely.
		
		}
	}

	void run(){
		int frame = 0;
		int min = 0;
		MooshPit_Init();
		while(true){
			MooshPit_Update();
			bool cycle = false;
			if(min==dayLength){cycle=true;min=0;}
			changeNight(cycle);
			Waitdraw();
			frame++;
			if(frame==3600){
				frame=0;
				min++;
			}
			Waitframe();
		}
	}


Here is the combined global script.

 

 

The MooshPit still seems to do nothing.
Maybe I don't use it right way



#20 Emily

Emily

    Scripter / Dev

  • ZC Developers

Posted 25 December 2019 - 04:16 AM

Oh GOD you're still using THAT SCRIPT? If you are using 2.55, you really really really REALLY should upgrade to the new Day/Night script, as that one is kinda bad...

 

Old:

https://www.purezc.n...=scripts&id=297

New;

https://www.purezc.n...=scripts&id=339



#21 Bagu

Bagu

    Fandomizer

  • Members
  • Real Name:A.I. Bot Bottomheimer
  • Location:Germany

Posted 25 December 2019 - 12:29 PM

Just downloaden your modified DayNight Script + Tint.zh.
Gonna try to modify it for my quest.
Maybe I'll need help to combine it with the Mooshpit (wich is succesfully compiled and I still hope, I learn how use it - still doesn't work)

I also added the global "flowing water" (on my own, yeah - First time)
Btw: The flowing water function works
...so, I still don't unterstand where's my mistake in usage of the Mooshpit Script

#22 Bagu

Bagu

    Fandomizer

  • Members
  • Real Name:A.I. Bot Bottomheimer
  • Location:Germany

Posted 28 December 2019 - 03:31 PM

Sounds more or less like my pit script. It was made for 2.53 but should work fine in 2.55. You can set a screen flag and it'll warp you using Side Warp A when you fall in a pit.

I got it, I got it
I FINALLY GOT IT!!!!
...had some little problems to use it right, at first.
But now I figured out my mistakes!

This script made a stupid, little non scripter VERY HAPPY!

THANK YOU, MOOSH


Party on!

Bagu


  • Moosh likes this



Also tagged with one or more of these keywords: FFC Script, Delay Warp, Play SFX, init Link Falls From Ceiling

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users