GDSTARSFAN49/sfd-scripts-dataset huggingface dataset:
/*
* author: Ebomb09 
* description: Replace the bullets in the Pistol .45 with some baseballs!
* mapmodes: versus, custom, campaign, survival 
*/

IList<Gunner> Gunners = new List<Gunner>();
static List<Gloo> Gloos = new List<Gloo>();

public void OnStartup(){

	foreach(IPlayer ply in Game.GetPlayers()){
		Gunners.Add(new Gunner(ply));
	}

	IObjectTimerTrigger stepper = (IObjectTimerTrigger)Game.CreateObject("TimerTrigger");
	stepper.SetIntervalTime(10);	
	stepper.SetRepeatCount(0);
	stepper.SetScriptMethod("GameTick");
	stepper.Trigger();
}

public void GameTick(TriggerArgs args){
	foreach(Gunner o in Gunners){
		o.Step();
	}
	foreach(Gloo o in Gloos){
		o.Step();
	}
}

class Gloo{
	IObject Object = null;
	
	public Gloo(Vector2 pos,Vector2 vec){
		Object = Game.CreateObject("Baseball",pos);
		Object.SetLinearVelocity(vec);
		Object.TrackAsMissile(true);
	}
	public void Step(){
		if(Object != null && !Object.IsRemoved){
			if((Math.Abs(Object.GetLinearVelocity().X) < 1 && Math.Abs(Object.GetLinearVelocity().Y) < 1) || !Object.IsMissile){
				Object.Destroy();
			}
		}
	}
}

class Gunner{
	IPlayer Player = null;
	int Lshot = 0;
	int Fired = 0;
	int HipFired = 0;
	IObject Obj = null;

	public Gunner(IPlayer ply){
		Player = ply;
		Obj = Game.CreateObject("InvisibleBlock");	
		Obj.CustomID = "REMOVE_LATER";	
		Obj.SetSizeFactor(new Point(2,2));		
	}
	public void Step(){
		Obj.SetWorldPosition(new Vector2(0,10000));
		CollisionFilter Col = Obj.GetCollisionFilter();
		Col.AboveBits = 0;
		Col.CategoryBits = 0;
		Col.MaskBits = 0;
		Col.BlockMelee = false;
		Col.ProjectileHit = true;
		Obj.SetCollisionFilter(Col);	

		if(Player != null && !Player.IsRemoved && !Player.IsDead){
			if(Lshot != Player.Statistics.TotalShotsFired){
				Lshot = Player.Statistics.TotalShotsFired;
				Fired = 50;
			}else if(Fired > 0){
				Fired --;
			}
			if(Player.IsHipFiring && HipFired == 0){
				HipFired = 50;
			}else if(HipFired > 0){
				HipFired --;
			}
			if(!Player.IsHipFiring){
				HipFired = 0;
			}
			if(Player.CurrentWeaponDrawn == WeaponItemType.Handgun){
				if(Player.CurrentSecondaryWeapon.WeaponItem == WeaponItem.PISTOL45){
					if(Fired > 49 || HipFired > 30){	
						Obj.SetWorldPosition(Player.GetWorldPosition() + new Vector2(-6,16) + Player.AimVector * 20);
					}
					if(Fired == 50){
						Gloos.Add(new Gloo(Player.GetWorldPosition() + new Vector2(0,12) + Player.AimVector * 20,Player.AimVector * 20));	
					}
				}
			}
		}
	}
}
//=========NO_WEAPONS========//
//=========BY_ARMADYL5=======//
//===========ENJOY===========//


// Feel Free To Use Any Script Or Method You Like //



public void OnStartup(){
IObject[] Obj = Game.GetObjectsByName(new string[]{
"SpawnWeaponArea", "SpawnWeaponAreaCeiling"});
foreach(IObject Object in Obj){
Object.Remove();
}
}
//============TELEPORT_SCRIPT_V_1.1=======//
//===============BY_ARMADYL5=============//
//=================ENJOY================//


List <IPlayer> Teleporters = new List<IPlayer>();
List <IPlayer> NonTeleporters = new List<IPlayer>();


// Feel Free To Use Any Script Or Method You Like //


 
//==============STARTUP_PREPARE===============//

public void OnStartup(){
IObjectTimerTrigger Timer = (IObjectTimerTrigger)Game.CreateObject("TimerTrigger");
Timer.SetIntervalTime(100);
Timer.SetRepeatCount(0);
Timer.SetScriptMethod("Teleport");
Timer.Trigger();
foreach(IPlayer ply in Game.GetPlayers()){
if(ply.IsUser){
Teleporters.Add(ply);
}
}
}




public void Teleport(TriggerArgs args){
for (int i = NonTeleporters.Count-1;i>=0;i--){
IPlayer ply = NonTeleporters[i];
if(!ply.IsBlocking){
NonTeleporters.Remove(ply);
Teleporters.Add(ply);
}
}
for (int i = Teleporters.Count-1;i>=0;i--){
IPlayer ply = Teleporters[i];
Vector2 Here = ply.GetWorldPosition();
if(ply.IsBlocking && ply.IsWalking){
Game.PlaySound("ItemSpawn",Here,1f);
Game.PlaySound("ItemSpawn",Here + new Vector2(ply.FacingDirection*60,0),1f);
Game.PlayEffect("Electric",Here);
Game.PlayEffect("Electric",Here + new Vector2(ply.FacingDirection*60,0));
ply.SetWorldPosition(Here + new Vector2(ply.FacingDirection*60,0));
Teleporters.Remove(ply);
NonTeleporters.Add(ply);
}
}
}
/*                                                          
                             _   _                    ___   
                            | | / /                  |   \  
                            | |/ /   __   _  _   __  | |\ \ 
                            |   /   /  \ | \| | /  \ | |/ / 
                            |   \   |[]| |  | | |[]| |   \  
                            | |\ \  |[]| | |  | |[]| | |\ \ 
                            |_| \_\ \__/ |_|\_| \__/ |_| \_\ 
* author: Konor 
* description: Jump_Flip  
*/

public void OnStartup()
{
    IObjectTimerTrigger Timer1 = (IObjectTimerTrigger)Game.CreateObject("TimerTrigger");
    Timer1.SetIntervalTime(100);
    Timer1.SetRepeatCount(0);
    Timer1.SetScriptMethod("Flip");
    Timer1.Trigger();
}

public void Flip(TriggerArgs args)
{
	foreach(IPlayer ply in Game.GetPlayers())
	{
        if(ply.IsOnGround)
	    {
	    	if(ply.IsWalking)
	    	{
                if(ply.IsRolling)
	    	    {
	    	    	ply.SetLinearVelocity(ply.GetLinearVelocity() + new Vector2(0,7.5f));
                
                    if(ply.FacingDirection == 1)
                    {
                        ply.SetLinearVelocity(ply.GetLinearVelocity() + new Vector2(-1.5f,0));
                    }
					
                    if(ply.FacingDirection == -1)
                    {
                        ply.SetLinearVelocity(ply.GetLinearVelocity() + new Vector2(1.5f,0));
                    }
                }
            }
	    }
	}
}
/*
                             _   _                    ___   
                            | | / /                  |   \  
                            | |/ /   __   _  _   __  | |\ \ 
                            |   /   /  \ | \| | /  \ | |/ / 
                            |   \   |[]| |  | | |[]| |   \  
                            | |\ \  |[]| | |  | |[]| | |\ \ 
                            |_| \_\ \__/ |_|\_| \__/ |_| \_\ 
* author: Konor 
* description: Off_Grab. 
*/

public void OnStartup()
{
    IObjectTimerTrigger Timer0 = (IObjectTimerTrigger)Game.CreateObject("TimerTrigger");
    Timer0.SetIntervalTime(300);
    Timer0.SetRepeatCount (0);
    Timer0.SetScriptMethod("offGRAB");
    Timer0.Trigger();
    Game.RunCommand("/MSG Off Grab");
}

public void offGRAB(TriggerArgs args)
{
    foreach(IPlayer ply in Game.GetPlayers())
    {
        if(ply.IsGrabbing)
        {
            ply.SetWorldPosition(ply.GetWorldPosition() + new Vector2(0,4));
            Game.PlayEffect("CFTXT",ply.GetWorldPosition() + new Vector2(0,4),"cant");
        }
    }
}
//Jetpack Script.
//Made by ClockworkDice


public void OnStartup(){
	IObjectTimerTrigger Timer0 = (IObjectTimerTrigger)Game.CreateObject("TimerTrigger");
	Timer0.SetIntervalTime(100);
	Timer0.SetRepeatCount(0);
	Timer0.SetScriptMethod("Jetpack");
	Timer0.Trigger();
}

public void Jetpack(TriggerArgs args){
	foreach(IPlayer ply in Game.GetPlayers()){
		if(ply.IsWalking){
			ply.SetLinearVelocity(ply.GetLinearVelocity() + new Vector2(0,3));
		}
	}
}
//Made By ClockworkDice
//HOVERBOARDS!

public void OnStartup()
{
	IObjectTimerTrigger Timer0 = (IObjectTimerTrigger)Game.CreateObject("TimerTrigger");
	Timer0.SetIntervalTime(100);
	Timer0.SetRepeatCount(0);
	Timer0.SetScriptMethod("Heli");
	Timer0.Trigger();
}

int hoverBoardNum = 2;
List<IObject> hoverboards = new List<IObject>();
double test = Math.Cos(90);
public int runs = 0;
IObject prop;
//int rocketCoolDown = 0;
public void Heli(TriggerArgs args)
{
	
	//if(rocketCoolDown>0)rocketCoolDown--;
	if(runs==0)
	{
		foreach(IPlayer ply in Game.GetPlayers())
		{
			prop = Game.CreateObject("Metal06D",new Vector2(ply.GetWorldPosition().X+ply.FacingDirection*24, ply.GetWorldPosition().Y));
			prop.SetBodyType(BodyType.Dynamic);
			hoverboards.Add(prop);
		}
	}
	runs++;
	foreach(IObject h in hoverboards)
	{
		foreach(IPlayer ply in Game.GetPlayers())
		{
			if(ply.GetWorldPosition().X>=h.GetWorldPosition().X-20&&ply.GetWorldPosition().X<=h.GetWorldPosition().X+20&&ply.GetWorldPosition().Y>=h.GetWorldPosition().Y&&ply.GetWorldPosition().Y<=h.GetWorldPosition().Y+20)//check that the player is standing on the hoverboard
			{
				if(ply.IsWalking)
				{
					h.SetLinearVelocity(h.GetLinearVelocity()+new Vector2(0,2));
					
				}
				if(ply.IsRolling||ply.IsCrouching)
				{
					//h.SetLinearVelocity(h.GetLinearVelocity()+new Vector2(ply.FacingDirection,0));
					h.SetAngle(h.GetAngle()-ply.FacingDirection*0.1f);//tilt
				}
				/*
				if(ply.IsMeleeAttacking&&rocketCoolDown==0)
				{
					Game.SpawnProjectile (ProjectileItem.BAZOOKA , new Vector2(h.GetWorldPosition().X+(ply.FacingDirection*20), h.GetWorldPosition().Y-5+h.GetLinearVelocity().Y), new Vector2(ply.FacingDirection,0f));
					rocketCoolDown=20;
				}
				*/
			}
		}
		if(h.GetAngle()>0)
		{
			h.SetAngle(h.GetAngle()-0.05f);
		}
		if(h.GetAngle()<0)
		{
			h.SetAngle(h.GetAngle()+0.05f);
		}
		h.SetLinearVelocity(h.GetLinearVelocity()+new Vector2((float)Math.Sin(h.GetAngle())*-1,(float)Math.Cos(h.GetAngle())*1));//constant thrust
		h.SetAngularVelocity(0);//reset angular velocity
	}
}
private void CreateBird(string id){
IObject bird = Game.CreateObject("Dove00", Vector2.Zero);
bird.CustomID = id;
}

public void OnStartup(){
IPlayer[] ply = Game.GetPlayers();
CreateBird("bird");
IObject follower = Game.GetSingleObjectByCustomID("bird");
IObjectTimerTrigger timer = (IObjectTimerTrigger)Game.CreateObject("TimerTrigger");
timer.SetIntervalTime(10);
timer.SetRepeatCount(0);
timer.SetScriptMethod("BirdFollow");
timer.Trigger();
IObjectDisableTrigger disabler = (IObjectDisableTrigger)Game.CreateObject("DisableTrigger");
disabler.AddTriggerToDisable(timer);
IObjectOnDestroyedTrigger ondestroy = (IObjectOnDestroyedTrigger)Game.CreateObject("OnDestroyedTrigger");
ondestroy.AddTriggerDestroyObject(follower);
ondestroy.AddTriggerObject(disabler);
IObjectOnPlayerDeathTrigger afterdeath = (IObjectOnPlayerDeathTrigger)Game.CreateObject("OnPlayerDeathTrigger");
afterdeath.SetPlayerSource(ply[0]);
afterdeath.AddTriggerObject(disabler);
IObjectAlterCollisionTile altercollisiontile = (IObjectAlterCollisionTile)Game.CreateObject("AlterCollisionTile");
altercollisiontile.AddTargetObject(follower);
altercollisiontile.SetDisabledCategoryBits(0xFFFF);
altercollisiontile.SetDisabledMaskBits(0xFFFF);
altercollisiontile.SetDisabledAboveBits(0xFFFF);
}

public void BirdFollow(TriggerArgs arg){
IPlayer[] ply = Game.GetPlayers();
IObject follower = Game.GetSingleObjectByCustomID("bird");
follower.SetBodyType(BodyType.Static);
if (ply[0].FacingDirection == -1){
follower.SetWorldPosition(ply[0].GetWorldPosition() + new Vector2(14,16));
}
if (ply[0].FacingDirection == 1){
follower.SetWorldPosition(ply[0].GetWorldPosition() + new Vector2(-14,16));
}
}
List <IPlayer> plyon = new List<IPlayer>();
List <IPlayer> plyoff = new List<IPlayer>();

//Change whatever you need =)

public void OnStartup(){
Game.RunCommand("/msg Script By No.42");
foreach(IPlayer ply in Game.GetPlayers()){
IObjectTimerTrigger Timer0 = (IObjectTimerTrigger)Game.CreateObject("TimerTrigger");
Timer0.SetIntervalTime(1000);
Timer0.SetRepeatCount(0);
Timer0.SetScriptMethod("Crouching");
Timer0.Trigger();
IObjectTimerTrigger Timer1 = (IObjectTimerTrigger)Game.CreateObject("TimerTrigger");
Timer1.SetIntervalTime(700);
Timer1.SetRepeatCount(0);
Timer1.SetScriptMethod("TakingCover");
Timer1.Trigger();
IObjectTimerTrigger Timer2 = (IObjectTimerTrigger)Game.CreateObject("TimerTrigger");
Timer2.SetIntervalTime(10000);
Timer2.SetRepeatCount(0);
Timer2.SetScriptMethod("Tips");
Timer2.Trigger();
IObjectTimerTrigger Timer3 = (IObjectTimerTrigger)Game.CreateObject("TimerTrigger");
Timer3.SetIntervalTime(1000);
Timer3.SetRepeatCount(0);
Timer3.SetScriptMethod("Grabbing");
Timer3.Trigger();
}
}

//Recover HP When you are crouching
public void Crouching(TriggerArgs args){
	foreach(IPlayer ply in Game.GetPlayers()){
	if(ply.IsCrouching && ply.IsIdle){
	ply.SetHealth(ply.GetHealth()+2f);
}
}
}

//Recover HP When you are taking cover
public void TakingCover(TriggerArgs args){
	foreach(IPlayer ply in Game.GetPlayers()){
	if(ply.IsTakingCover && ply.IsIdle){
	ply.SetHealth(ply.GetHealth()+2f);
}
}
}
//Recover HP When you are grabbing
public void Grabbing(TriggerArgs args){
	foreach(IPlayer ply in Game.GetPlayers()){
	if(ply.IsLedgeGrabbing){
	ply.SetHealth(ply.GetHealth()+1.2f);}}} 





//Some tips
public void Tips(TriggerArgs args){
	Random rand = new Random();
	int randomNumber = rand.Next(6);
	if(randomNumber == 0){
	Game.ShowPopupMessage("Crouching Can Recover 2HP Every Second",Color.Grey);
}
	if(randomNumber == 1){
	Game.ShowPopupMessage("TalkingCover Can Recover HP Faster Than Crouching",Color.Grey);
}
	if(randomNumber == 2){
	Game.ShowPopupMessage("In Fact,You Can't Crouching To Heal Yourself While You Are Fighting",Color.Grey);
}
	if(randomNumber == 3){
	Game.ShowPopupMessage("LedgeGrabbing Also Can Recover 1.2 HP,But It's very slow",Color.Grey);
}	
	if(randomNumber == 4){
	Game.ShowPopupMessage("Healer By No.42",Color.Grey);
}
}
public void OnStartup()
{Game.RunCommand("/MSG  ALT+Block ");
Shoot(200, 0, "Shoot", "");
}
public void Shoot(TriggerArgs args){
foreach(IPlayer ply in Game.GetPlayers())
{
if(ply.IsBlocking&&ply.IsWalking){
Vector2 pos = ply.GetWorldPosition();
		int dir = ply.FacingDirection;
for (int i = 1; i >= 1; i--){
Game.SpawnProjectile(ProjectileItem.PISTOL, pos + new Vector2(6f*dir,9f), new Vector2(100f*dir,i));
}
}}}
private void Shoot(int interval, int count ,string method, string id)
{
	IObjectTimerTrigger timerTrigger = (IObjectTimerTrigger)Game.CreateObject ("TimerTrigger"); 
	timerTrigger.SetIntervalTime(interval);
	timerTrigger.SetRepeatCount(count);
	timerTrigger.SetScriptMethod(method);
	timerTrigger.CustomId = id;
	timerTrigger.Trigger();
}
//============NINJA_SCRIPT============//
//============BY_ARMADYL5============//
//==============ENJOY===============//


private const bool KATANA_ALLOWED = true;  // set to false to Disable The Katana 


// Feel Free To Use Any Script Or Method You Like //



//==============LISTS===============//

List <IPlayer> NinjaON = new List<IPlayer>();
List <IPlayer> NinjaOFF = new List<IPlayer>();


 
//==============STARTUP_PREPARE===============//

public void OnStartup(){
IObjectTimerTrigger Timer1 = (IObjectTimerTrigger)Game.CreateObject("TimerTrigger");
Timer1.SetIntervalTime(100);
Timer1.SetRepeatCount(0);
Timer1.SetScriptMethod("NinjaMode");
Timer1.Trigger();
foreach(IPlayer player in Game.GetPlayers()){
if(player.IsUser){
NinjaON.Add(player);
}
foreach(IPlayer ply in Game.GetPlayers()){
if(KATANA_ALLOWED && ply.IsUser){
ply.GiveWeaponItem(WeaponItem.KATANA);
}
}
}
}


//==============MOVEMENTS===============//

public void NinjaMode(TriggerArgs args){
for (int i = NinjaON.Count-1;i>=0;i--){
IPlayer ply = NinjaON[i];
if(ply.IsWalking && ply.IsInMidAir && !ply.IsJumpAttacking && !ply.IsJumpKicking && !ply.IsDiving && !ply.IsLedgeGrabbing){
Vector2 Here = ply.GetWorldPosition() + new Vector2(0,0);
Vector2 Here2 = ply.GetWorldPosition() + new Vector2(0,-1);
Vector2 Here3 = ply.GetWorldPosition() + new Vector2(ply.FacingDirection*1,-2);
Game.PlayEffect("TR_D",Here);
Game.PlayEffect("TR_D",Here2);
Game.PlayEffect("TR_D",Here3);
ply.SetLinearVelocity(ply.GetLinearVelocity() + new Vector2(0,4));
NinjaON.Remove(ply);
NinjaOFF.Add(ply);
}
}
for (int i = NinjaOFF.Count-1;i>=0;i--){
IPlayer ply = NinjaOFF[i];
if(ply.IsOnGround && ply.IsIdle || ply.IsLedgeGrabbing){
NinjaOFF.Remove(ply);
NinjaON.Add(ply);
}
}
for (int i = NinjaON.Count-1;i>=0;i--){
IPlayer ply = NinjaON[i];
if(ply.IsBlocking && ply.IsWalking && ply.IsCrouching){
Vector2 Here = ply.GetWorldPosition() + new Vector2(-ply.FacingDirection*1,2);
Game.PlayEffect("TR_D",Here);
Game.PlayEffect("TR_D",Here);
Game.PlayEffect("TR_D",Here);
ply.SetLinearVelocity(new Vector2(-ply.FacingDirection*6,6));
NinjaON.Remove(ply);
NinjaOFF.Add(ply);
}
}
for (int i = NinjaON.Count-1;i>=0;i--){
IPlayer ply = NinjaON[i];
if(ply.IsRolling && ply.IsWalking){
Vector2 Here = ply.GetWorldPosition() + new Vector2(-ply.FacingDirection*1,2);
Game.PlayEffect("TR_D",Here);
Game.PlayEffect("TR_D",Here);
Game.PlayEffect("TR_D",Here);
ply.SetLinearVelocity(new Vector2(ply.FacingDirection*6,6));
NinjaON.Remove(ply);
NinjaOFF.Add(ply);
}
}
for (int i = NinjaON.Count-1;i>=0;i--){
IPlayer ply = NinjaON[i];
if(ply.IsJumpAttacking && ply.IsWalking){
Vector2 Here = ply.GetWorldPosition();
Game.PlayEffect("TR_D",Here);
Game.PlayEffect("TR_D",Here);
Game.PlayEffect("TR_D",Here);
ply.SetLinearVelocity(new Vector2(0,-6));
NinjaON.Remove(ply);
NinjaOFF.Add(ply);
}
}
}
//============DYNAMO_SCRIPT=============//
//=============BY_ARMADYL5==============//
//================ENJOY=================//



// Feel Free To Use Any Script Or Method You Like //

 

//==============STARTUP_PREPARE===============//


public void OnStartup(){
IObjectTimerTrigger Timer = (IObjectTimerTrigger)Game.CreateObject("TimerTrigger");
Timer.SetIntervalTime(100);
Timer.SetRepeatCount(0);
Timer.SetScriptMethod("Dynamo");
Timer.Trigger();
Vector2 Here = new Vector2(0,Game.GetWorldBottom()) + new Vector2(0,50000);
Timer.SetWorldPosition(Here);
}




public void Dynamo(TriggerArgs args){
foreach(IPlayer ply in Game.GetPlayers()){
if(ply.IsWalking && ply.IsMeleeAttacking){
Vector2 HereR = ply.GetWorldPosition() + new Vector2(60,0);
Vector2 HereL = ply.GetWorldPosition() + new Vector2(-60,0);
IObject [] Obj = Game.GetObjectsByArea(Game.GetCameraArea());
foreach(IObject Object in Obj){
Vector2 ObjX = Object.GetWorldPosition();
if((ObjX-HereR).Length() <= 55 && ply.FacingDirection == 1){
Object.SetBodyType(BodyType.Dynamic);
Game.PlaySound("ItemSpawn",ObjX,1f);
}
if((ObjX-HereL).Length() <= 55 && ply.FacingDirection == -1){
Object.SetBodyType(BodyType.Dynamic);
Game.PlaySound("ItemSpawn",ObjX,1f);
}
}
}
}
foreach(IPlayer ply in Game.GetPlayers()){
if(ply.IsWalking && ply.IsBlocking){
Vector2 HereR = ply.GetWorldPosition() + new Vector2(60,0);
Vector2 HereL = ply.GetWorldPosition() + new Vector2(-60,0);
IObject [] Obj = Game.GetObjectsByArea(Game.GetCameraArea());
foreach(IObject Object in Obj){
Vector2 ObjX = Object.GetWorldPosition();
if((ObjX-HereR).Length() <= 55 && ply.FacingDirection == 1){
Object.SetBodyType(BodyType.Static);
Game.PlaySound("ItemSpawn",ObjX,1f);
}
if((ObjX-HereL).Length() <= 55 && ply.FacingDirection == -1){
Object.SetBodyType(BodyType.Static);
Game.PlaySound("ItemSpawn",ObjX,1f);
}
}
}
}
}
//============FLOW_SCRIPT============//
//============BY_ARMADYL5============//
//==============ENJOY===============//

//==============Optimized by==============\\
// 	   	   Motto73 	          \\
// this opt really makes it lag MUCH less \\
// now it lags (10*number of players) less\\
//=============  Optimized  ==============\\


// Feel Free To Use Any Script Or Method You Like //


 
//==============STARTUP_PREPARE===============//

	public IObject [] Obj;

public void OnStartup(){
CreateTimer(100,0,"Flow","0");
CreateTimer(10,1,"Objects","1");
CreateTimer(1000,0,"Objects","2");
}


public void Objects(TriggerArgs args){
	Obj = Game.GetObjectsByArea(Game.GetCameraArea());
}



public void Flow(TriggerArgs args){
	foreach(IPlayer ply in Game.GetPlayers()){
		Vector2 Here = ply.GetWorldPosition();
		foreach(IObject Object in Obj){
			Vector2 ObjX = Object.GetWorldPosition();
			if(ply.IsBlocking && ply.IsWalking){
				if((ObjX-Here).Length() <= 60 && Object.GetBodyType() == BodyType.Dynamic){
				Game.PlaySound("ItemSpawn",ObjX,1f);
				Object.SetLinearVelocity(Object.GetLinearVelocity() + new Vector2(0,6));
				ply.SetLinearVelocity(new Vector2(0,0));
				}
			}
			if(ply.IsMeleeAttacking && ply.IsWalking){
				if((ObjX-Here).Length() <= 60 && Object.GetBodyType() == BodyType.Dynamic){
				Game.PlaySound("ItemSpawn",ObjX,1f);
				Object.SetLinearVelocity(Object.GetLinearVelocity() + new Vector2(5*ply.FacingDirection,0));
				ply.SetLinearVelocity(new Vector2(0,0));
				}
			}
		}
	}
}
public void CreateTimer(int interval, int count, string method, string id) {
	IObjectTimerTrigger timerTrigger = (IObjectTimerTrigger)Game.CreateObject("TimerTrigger"); 
	timerTrigger.SetIntervalTime(interval);
	timerTrigger.SetRepeatCount(count);
	timerTrigger.SetScriptMethod(method);
	timerTrigger.CustomId = id;
	timerTrigger.Trigger();
}
//============FLOW_SCRIPT============//
//============BY_ARMADYL5============//
//==============ENJOY===============//



// Feel Free To Use Any Script Or Method You Like //


 
//==============STARTUP_PREPARE===============//

public void OnStartup(){
IObjectTimerTrigger Timer0 = (IObjectTimerTrigger)Game.CreateObject("TimerTrigger");
Timer0.SetIntervalTime(100);
Timer0.SetRepeatCount(0);
Timer0.SetScriptMethod("Flow");
Timer0.Trigger();
}




public void Flow(TriggerArgs args){
foreach(IPlayer ply in Game.GetPlayers()){
Vector2 Here = ply.GetWorldPosition();
Vector2 HereR = ply.GetWorldPosition() + new Vector2(30,0);
Vector2 HereL = ply.GetWorldPosition() + new Vector2(-30,0);
IObject [] Obj = Game.GetObjectsByArea(Game.GetCameraArea());
foreach(IObject Object in Obj){
Vector2 ObjX = Object.GetWorldPosition();
if(Object != ply){
if(ply.IsBlocking && ply.IsWalking){
if((ObjX-Here).Length() <= 35 && Object.GetBodyType() == BodyType.Dynamic){
Game.PlaySound("ItemSpawn",ObjX,1f);
Object.SetLinearVelocity(Object.GetLinearVelocity() + new Vector2(0,5));
ply.SetLinearVelocity(new Vector2(0,0));
Object.SetAngularVelocity(Object.GetAngularVelocity() - 5);
}
}
if(ply.IsMeleeAttacking && ply.IsWalking && ply.FacingDirection == 1){
if((ObjX-HereR).Length() <= 25 && Object.GetBodyType() == BodyType.Dynamic){
Game.PlaySound("ItemSpawn",ObjX,1f);
Object.SetLinearVelocity(Object.GetLinearVelocity() + new Vector2(5,3));
Object.SetAngularVelocity(Object.GetAngularVelocity() - 10);
}
}
if(ply.IsMeleeAttacking && ply.IsWalking && ply.FacingDirection == -1){
if((ObjX-HereL).Length() <= 25 && Object.GetBodyType() == BodyType.Dynamic){
Game.PlaySound("ItemSpawn",ObjX,1f);
Object.SetLinearVelocity(Object.GetLinearVelocity() + new Vector2(-5,3));
Object.SetAngularVelocity(Object.GetAngularVelocity() + 10);
}
}
}
}
}
}