Jump to content

Photo

Dark Link Script

Dark Link Script

  • Please log in to reply
19 replies to this topic

#1 ZeldaPlayer

ZeldaPlayer

    What's up my playas

  • Members
  • Location:USA

Posted 09 January 2014 - 04:28 PM

I wanna know if there is a script for Dark Link.



#2 David

David

    Fallen leaves... adorn my night.

  • Administrators
  • Real Name:David
  • Pronouns:He / Him

Posted 09 January 2014 - 04:30 PM

Yes, there are, as I've seen in some scripted quests, but none have been released publicly, as far as I know.



#3 ZeldaPlayer

ZeldaPlayer

    What's up my playas

  • Members
  • Location:USA

Posted 09 January 2014 - 04:31 PM

I've seen it on You Only Live Once, it was awesome.



#4 David

David

    Fallen leaves... adorn my night.

  • Administrators
  • Real Name:David
  • Pronouns:He / Him

Posted 09 January 2014 - 04:32 PM

Yeah, that's where I remember seeing a Dark Link. Great quest. If you could contact the creator, you might be able to get, but I'm not sure. :)



#5 ZeldaPlayer

ZeldaPlayer

    What's up my playas

  • Members
  • Location:USA

Posted 09 January 2014 - 04:34 PM

Here's the Dark Link and Lifebar script.

 

 
import "std.zh"
 
ffc script DarkLink{
void run(){
int pause=5;
int prob=5;
Waitframes(30);
npc dlink=Screen->LoadNPC(1);
while(true){
if(dlink->isValid()==true){
this->X=0-Link->X+240;
this->Y=0-Link->Y+160;
dlink->X=this->X;
dlink->Y=this->Y;
int maxhealth=dlink->HP;
if(Link->Dir==DIR_UP)this->Data=1005;
if(Link->Dir==DIR_RIGHT)this->Data=1004;
if(Link->Dir==DIR_DOWN)this->Data=1007;
if(Link->Dir==DIR_LEFT)this->Data=1006;
if(Rand(1,prob)==prob){
eweapon spurt=Screen->CreateEWeapon(EW_FIREBALL);
spurt->X=this->X;
spurt->Y=this->Y;
spurt->Damage=8;
spurt->Angular=true;
spurt->Angle=DegtoRad(Rand(1,360));
Waitframes(pause);
if(dlink->HP<750&&Rand(1,40)==40){
int angle=0;
pause=3;
prob=3;
for(int i=0; i<100; i++){
dlink->X=this->X;
dlink->Y=this->Y;
eweapon fire=Screen->CreateEWeapon(EW_FIRE);
fire->X=this->X;
fire->Y=this->Y;
fire->Step=150;
fire->Angular=true;
fire->Damage=20;
fire->Angle=DegtoRad(angle);
angle+=18;
Waitframes(2);
}
Waitframes(pause);
}
if(dlink->HP<500&&Rand(1,30)==30){
pause=0;
prob=1;
npc bomb=Screen->CreateNPC(181);
bomb->X=Link->X;
bomb->Y=Link->Y;
bomb->Z=300;
while(bomb->Z>0)Waitframe();
for(int i=0; i<5; i++){
eweapon boom=Screen->CreateEWeapon(EW_SBOMBBLAST);
boom->X=Rand(bomb->X-8,bomb->X+24);
boom->Y=Rand(bomb->Y-8,bomb->Y+24);
boom->Damage=16;
Waitframes(3);
}
bomb->HP=0;
}
if(dlink->HP<250&&Rand(1,15)==15){
dlink->HP+=30;
for(int i=0; i<40; i++){
this->Data=1012;
eweapon healray=Screen->CreateEWeapon(EW_FIREBALL);
healray->X=this->X;
healray->Y=this->Y;
healray->Damage=4;
healray->UseSprite(90);
healray->Angular=true;
healray->Angle=DegtoRad(Rand(1,360));
healray->Step=200;
Waitframes(5);
}
}
}
}
else{
for(int i=0; i<20; i++){
eweapon deathexplode=Screen->CreateEWeapon(EW_BOMBBLAST);
deathexplode->X=Rand(this->X-16,this->X+32);
deathexplode->Y=Rand(this->Y-16,this->Y+32);
Waitframes(10);
}
Link->PitWarp(10,01);
}
Waitframe();
}
}
}
ffc script LifeBar{
void run(int life, int tile1, int tile2){
while(true){
npc dlink=Screen->LoadNPC(1);
if(dlink->HP<life){
this->Data=tile2;
}
else{
this->Data=tile1;
}
Waitframe();
}
}
}


#6 David

David

    Fallen leaves... adorn my night.

  • Administrators
  • Real Name:David
  • Pronouns:He / Him

Posted 09 January 2014 - 04:36 PM

Wait, did you make that, or find it?



#7 ZeldaPlayer

ZeldaPlayer

    What's up my playas

  • Members
  • Location:USA

Posted 09 January 2014 - 04:37 PM

Here's the real one.

import "std.zh"

ffc script DarkLink{
void run(){
int pause=5;
int prob=5;
Waitframes(30);
npc dlink=Screen->LoadNPC(1);
while(true){
if(dlink->isValid()==true){
this->X=0-Link->X+240;
this->Y=0-Link->Y+160;
dlink->X=this->X;
dlink->Y=this->Y;
int maxhealth=dlink->HP;
if(Link->Dir==DIR_UP)this->Data=1005;
if(Link->Dir==DIR_RIGHT)this->Data=1004;
if(Link->Dir==DIR_DOWN)this->Data=1007;
if(Link->Dir==DIR_LEFT)this->Data=1006;
if(Rand(1,prob)==prob){
eweapon spurt=Screen->CreateEWeapon(EW_FIREBALL);
spurt->X=this->X;
spurt->Y=this->Y;
spurt->Damage=8;
spurt->Angular=true;
spurt->Angle=DegtoRad(Rand(1,360));
Waitframes(pause);
if(dlink->HP<750&&Rand(1,40)==40){
int angle=0;
pause=3;
prob=3;
for(int i=0; i<100; i++){
dlink->X=this->X;
dlink->Y=this->Y;
eweapon fire=Screen->CreateEWeapon(EW_FIRE);
fire->X=this->X;
fire->Y=this->Y;
fire->Step=150;
fire->Angular=true;
fire->Damage=20;
fire->Angle=DegtoRad(angle);
angle+=18;
Waitframes(2);
}
Waitframes(pause);
}
if(dlink->HP<500&&Rand(1,30)==30){
pause=0;
prob=1;
npc bomb=Screen->CreateNPC(181);
bomb->X=Link->X;
bomb->Y=Link->Y;
bomb->Z=300;
while(bomb->Z>0)Waitframe();
for(int i=0; i<5; i++){
eweapon boom=Screen->CreateEWeapon(EW_SBOMBBLAST);
boom->X=Rand(bomb->X-8,bomb->X+24);
boom->Y=Rand(bomb->Y-8,bomb->Y+24);
boom->Damage=16;
Waitframes(3);
}
bomb->HP=0;
}
if(dlink->HP<250&&Rand(1,15)==15){
dlink->HP+=30;
for(int i=0; i<40; i++){
this->Data=1012;
eweapon healray=Screen->CreateEWeapon(EW_FIREBALL);
healray->X=this->X;
healray->Y=this->Y;
healray->Damage=4;
healray->UseSprite(90);
healray->Angular=true;
healray->Angle=DegtoRad(Rand(1,360));
healray->Step=200;
Waitframes(5);
}
}
}
}
else{
for(int i=0; i<20; i++){
eweapon deathexplode=Screen->CreateEWeapon(EW_BOMBBLAST);
deathexplode->X=Rand(this->X-16,this->X+32);
deathexplode->Y=Rand(this->Y-16,this->Y+32);
Waitframes(10);
}
Link->PitWarp(10,01);
}
Waitframe();
}
}
}
ffc script LifeBar{
void run(int life, int tile1, int tile2){
while(true){
npc dlink=Screen->LoadNPC(1);
if(dlink->HP<life){
this->Data=tile2;
}
else{
this->Data=tile1;
}
Waitframe();
}
}
}

I made it, but you got to make a few tabs.



#8 David

David

    Fallen leaves... adorn my night.

  • Administrators
  • Real Name:David
  • Pronouns:He / Him

Posted 09 January 2014 - 04:38 PM

Wait, if you made it, then whey did you ask for it? (I'm just trying to understand here, bear with me)



#9 ZeldaPlayer

ZeldaPlayer

    What's up my playas

  • Members
  • Location:USA

Posted 09 January 2014 - 04:39 PM

This is the only script I know how to make, I'm trying to find other scripts.



#10 David

David

    Fallen leaves... adorn my night.

  • Administrators
  • Real Name:David
  • Pronouns:He / Him

Posted 09 January 2014 - 04:43 PM

Oh, okay.

#11 anikom15

anikom15

    Dictator

  • Banned
  • Real Name:Westley
  • Location:California, United States

Posted 09 January 2014 - 05:01 PM

You should put your scripts in code tags so they look nicer!


#12 ZeldaPlayer

ZeldaPlayer

    What's up my playas

  • Members
  • Location:USA

Posted 09 January 2014 - 05:12 PM

import "std.zh"

ffc script DarkLink{
	void run(){
	int pause=5;
	int prob=5;
	Waitframes(30);
	npc dlink=Screen->LoadNPC(1);
		while(true){
		if(dlink->isValid()==true){
		this->X=0-Link->X+240;
		this->Y=0-Link->Y+160;
		dlink->X=this->X;
		dlink->Y=this->Y;
		int maxhealth=dlink->HP;
		if(Link->Dir==DIR_UP)this->Data=1005;
		if(Link->Dir==DIR_RIGHT)this->Data=1004;
		if(Link->Dir==DIR_DOWN)this->Data=1007;
		if(Link->Dir==DIR_LEFT)this->Data=1006;
			if(Rand(1,prob)==prob){
			eweapon spurt=Screen->CreateEWeapon(EW_FIREBALL);
			spurt->X=this->X;
			spurt->Y=this->Y;
			spurt->Damage=8;
			spurt->Angular=true;
			spurt->Angle=DegtoRad(Rand(1,360));
			Waitframes(pause);
			if(dlink->HP<750&&Rand(1,40)==40){
			int angle=0;
			pause=3;
			prob=3;
				for(int i=0; i<100; i++){
				dlink->X=this->X;
				dlink->Y=this->Y;
				eweapon fire=Screen->CreateEWeapon(EW_FIRE);
				fire->X=this->X;
				fire->Y=this->Y;
				fire->Step=150;
				fire->Angular=true;
				fire->Damage=20;
				fire->Angle=DegtoRad(angle);
				angle+=18;
				Waitframes(2);
				}
				Waitframes(pause);
			}
			if(dlink->HP<500&&Rand(1,30)==30){
			pause=0;
			prob=1;
			npc bomb=Screen->CreateNPC(181);
			bomb->X=Link->X;
			bomb->Y=Link->Y;
			bomb->Z=300;
			while(bomb->Z>0)Waitframe();
				for(int i=0; i<5; i++){
				eweapon boom=Screen->CreateEWeapon(EW_SBOMBBLAST);
				boom->X=Rand(bomb->X-8,bomb->X+24);
				boom->Y=Rand(bomb->Y-8,bomb->Y+24);
				boom->Damage=16;
				Waitframes(3);
				}
				bomb->HP=0;
			}
			if(dlink->HP<250&&Rand(1,15)==15){
			dlink->HP+=30;
				for(int i=0; i<40; i++){
				this->Data=1012;
				eweapon healray=Screen->CreateEWeapon(EW_FIREBALL);
				healray->X=this->X;
				healray->Y=this->Y;
				healray->Damage=4;
				healray->UseSprite(90);
				healray->Angular=true;
				healray->Angle=DegtoRad(Rand(1,360));
				healray->Step=200;
				Waitframes(5);
				}
			}
			}
		}
		else{
			for(int i=0; i<20; i++){
			eweapon deathexplode=Screen->CreateEWeapon(EW_BOMBBLAST);
			deathexplode->X=Rand(this->X-16,this->X+32);
			deathexplode->Y=Rand(this->Y-16,this->Y+32);
			Waitframes(10);
			}
			Link->PitWarp(10,01);
		}
		Waitframe();
		}
	}
}	
ffc script LifeBar{
	void run(int life, int tile1, int tile2){
		while(true){
		npc dlink=Screen->LoadNPC(1);
			if(dlink->HP<life){
			this->Data=tile2;
			}
			else{
			this->Data=tile1;
			}
		Waitframe();
		}
	}
}

Like this?



#13 David

David

    Fallen leaves... adorn my night.

  • Administrators
  • Real Name:David
  • Pronouns:He / Him

Posted 09 January 2014 - 05:17 PM

Yeah, like that. It is much more readable. :)



#14 Moosh

Moosh

    Tiny Little Questmaker

  • ZC Developers

Posted 09 January 2014 - 05:35 PM

Oh god that indenting. Help!

 

Anyways, this script is really old. You should probably look for something newer that uses Saffith's ghost.zh header and is also not written by a complete moron. Jeez, my indenting back then wasn't even consistent with itself!

 

Edit: Just for the future, ZeldaPlayer, the edit button and spoiler tags are your friends. Redundant posts with large scripts in them can be rather bothersome for some folks.



#15 Jamian

Jamian

    ZC enthusiast

  • Members

Posted 09 January 2014 - 05:39 PM

I made it, but you got to make a few tabs.

 

So, did you or Moosh write this script? I'm confused.





Also tagged with one or more of these keywords: Dark Link, Script

1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users