The following warnings occurred:
Warning [2] count(): Parameter must be an array or an object that implements Countable - Line: 906 - File: showthread.php PHP 7.2.24-0ubuntu0.18.04.17 (Linux)
File Line Function
/showthread.php 906 errorHandler->error



Facebook Twitter YouTube Frictional Games | Forum | Privacy Policy | Dev Blog | Dev Wiki | Support | Gametee


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Help!
LoneWolf Offline
Senior Member

Posts: 308
Threads: 43
Joined: Sep 2010
Reputation: 0
#1
Help!

////////////////////////////
// Run first time starting map
void OnStart()
{
AddEntityCollideCallback("Player", "playsound", "playsound", true, 1);
AddEntityCollideCallback("Player", "abc", "abc", true, 1);
AddEntityCollideCallback("Player", "def", "def", true, 1);
AddEntityCollideCallback("Player", "ghi", "ghi", true, 1);
AddEntityCollideCallback("Player", "jkl", "jkl", true, 1);
AddEntityCollideCallback("Player", "mno", "mno", true, 1);
AddEntityCollideCallback("Player", "pqr", "pqr", true, 1);
AddEntityCollideCallback("Player", "stu", "stu", true, 1);
AddUseItemCallback("", "PickFinalAcid", "web_2", "acid", true);
    //----ENTITY INIT----//
    for(int i=1;i<=4;i++) {
        ConnectEntities("Part_"+i, "Valve_"+i,

"Valve_"+i+"_AreaValve", false, 0, "InteractTurnValve");
        
        SetWheelStuckState("Valve_"+i, -1, false);

    ConnectEntities("Ignite", "ValveIgnite", "Valve_1_AreaBottle",

false, 0, "InteractTurnOnAcidMachine");
    
    SetEntityActive("chemical_container_static_1", false);
    SetEntityActive("chemical_container_2", false);
    
    SetWheelStuckState("ValveIgnite", -1, false);

    AddUseItemCallback("placebottle", "chemical_container_1",

"AreaUseMachine", "ItemJarOnMachine", true);
    AddUseItemCallback("placebottle2", "chemical_container_1",

"AreaPlaceJar", "ItemJarOnMachine", true);
    AddUseItemCallback("placebottle3", "chemical_container_1",

"ValveIgnite", "ItemJarOnMachine", true);
    
    for(int i=1;i<=4;i++) {
        AddUseItemCallback("placebottlev"+i, "chemical_container_1",

"Valve_"+i, "ItemJarOnMachine", true);
        AddUseItemCallback("Chemicalvi_"+i, "Chemical_"+i,

"ValveIgnite", "AddChemical", true);
        AddUseItemCallback("Chemicala_"+i, "Chemical_"+i,

"AreaUseMachine", "AddChemical", true);
        AddUseItemCallback("Chemicalm_"+i, "Chemical_"+i,

"acid_machine_1", "AddChemical", true);
        
        for(int j=1;j<=4;j++)
            AddUseItemCallback("Chemicalv_"+i, "Chemical_"+i,

"Valve_"+j, "AddChemical", true);
    }
    
    SetEntityPlayerInteractCallback("ValveIgnite",

"InteractAcidMachine", false);
    for(int i=1;i<=4;i++) SetEntityPlayerInteractCallback("Valve_"+i,

"InteractAcidMachine", false);
    
    AddUseItemCallback( "placeepoxy", "chemical_container_2",

"cave_in_1", "UseEpoxyOnCavein", false );
    
    AddEntityCollideCallback("Player", "AreaBoomDamage",

"CollideBoomArea", false, 1);
    AddEntityCollideCallback("Player", "AreaBoomDeath",

"CollideBoomArea", false, 1);
    AddEntityCollideCallback("Player", "AreaBoomEscape",

"CollideBoomArea", false, 1);
    
    BlockHint("EntityWheel");
        
    if(ScriptDebugOn())
    {
        GiveItemFromFile("lantern", "lantern.ent");
        for(int i=0;i<10;i++)
        {
            GiveItemFromFile("tinderbox_"+i, "tinderbox.ent");
        }
        GiveItemFromFile("chemical_container_2",

"chemical_container_epoxy.ent");
    }
}
////////////////////////////
// Run when entering map
void OnEnter()
{
    //----PRELOADING----//
    PreloadSound("12_epoxy_flow");
    PreloadSound("12_epoxy_fill"); PreloadSound("puzzle_place_jar");

PreloadSound("12_epoxy_drip"); PreloadSound("player_climb");
    PreloadSound("player_crouch"); PreloadSound("12_epoxy_blow");
    PreloadSound("12_noise_1");  PreloadSound("12_noise_2");

PreloadSound("12_noise_2"); PreloadSound("12_noise_3");
    PreloadSound("12_noise_4"); PreloadSound("03_rock_move");
    PreloadSound("puzzle_place_jar"); PreloadSound

("puzzle_add_chemical"); PreloadSound("general_fire_burning_low");
    PreloadSound("puzzle_boil"); PreloadSound("puzzle_gas");

PreloadSound("puzzle_boil_low");
    PreloadSound("puzzle_acid"); PreloadSound("puzzle_acid_success");

PreloadSound("puzzle_acid_fail");
    PreloadSound("04_water_puff"); PreloadSound("general_thunder");
    
    PreloadParticleSystem("ps_liquid_epoxy");
    PreloadParticleSystem("ps_dust_drilling");
    PreloadParticleSystem("ps_liquid_epoxy_splatt");

PreloadParticleSystem("ps_liquid_epoxy_drip");    
    PreloadParticleSystem("ps_acid_machine_bubble_large02");
    PreloadParticleSystem("ps_acid_machine_bubble_end");

PreloadParticleSystem("ps_acid_machine_bubble_large");

PreloadParticleSystem("ps_acid_machine_bubble_small");
    
    SetWheelStuckState("ValveIgnite", -1, false);
}
////////////////////////////
// Run when leaving map
void OnLeave()
{
}

void playsound(string &in asParent, string &in asChild, int alState)
{
PlaySoundAtEntity("guardian_distant2.snt", "guardian_distant2.snt",

"guardian_distant2.snt", 0, false);
}

void abc(string &in asParent, string &in asChild, int alState)
{
GivePlayerDamage(500, "BloodSplat", true, false);
}

void def(string &in asParent, string &in asChild, int alState)
{
CreateParticleSystemAtEntity("", "ps_break_cavein.ps", "1a", false);
CreateParticleSystemAtEntity("", "ps_break_cavein.ps", "2a", false);
CreateParticleSystemAtEntity("", "ps_break_cavein.ps", "3a", false);
CreateParticleSystemAtEntity("", "ps_break_cavein.ps", "4a", false);
CreateParticleSystemAtEntity("", "ps_break_cavein.ps", "5a", false);
CreateParticleSystemAtEntity("", "ps_break_cavein.ps", "6a", false);
CreateParticleSystemAtEntity("", "ps_break_cavein.ps", "7a", false);
CreateParticleSystemAtEntity("", "ps_water_dump.ps", "8a", false);
CreateParticleSystemAtEntity("", "ps_water_dump.ps", "9a", false);
PlaySoundAtEntity("05_rock_fall_2.snt", "05_rock_fall_2.snt",

"05_rock_fall_2.snt", 0, false);
PlaySoundAtEntity("guardian_ontop.snt", "guardian_ontop.snt",

"guardian_ontop.snt", 0, false);
StartScreenShake(0.1, 4.0, 0.1, 0.5);
}

void ghi(string &in asParent, string &in asChild, int alState)
{
GivePlayerDamage(500, "BloodSplat2", true, false);
}

void jkl(string &in asParent, string &in asChild, int alState)
{
PlaySoundAtEntity("amb_alert.snt", "amb_alert.snt", "amb_alert.snt", 0,

false);
GiveSanityDamage(25, true);
}

void mno(string &in asParent, string &in asChild, int alState)
{
SetEntityActive("servant_brute_1", true);
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_20", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_21", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_22", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_23", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_24", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_25", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_26", 3.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_27", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_28", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_29", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_30", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_31", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_32", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_33", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_34", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_35", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_36", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_37", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_38", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_39", 5.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_40", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_41", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_42", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_43", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_44", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_45", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_46", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_47", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_48", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_49", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_50", 3.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_51", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_52", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_53", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_54", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_55", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_56", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_57", 1.0f, "");
AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_58", 1.0f, "");
}
void pqr(string &in asParent, string &in asChild, int alState)
{
SetEntityActive("servant_brute_2", true);
AddEnemyPatrolNode("servant_brute_2", "PathNodeArea_59", 1.0f, "");
AddEnemyPatrolNode("servant_brute_2", "PathNodeArea_60", 1.0f, "");
AddEnemyPatrolNode("servant_brute_2", "PathNodeArea_61", 1.0f, "");
AddEnemyPatrolNode("servant_brute_2", "PathNodeArea_62", 1.0f, "");
AddEnemyPatrolNode("servant_brute_2", "PathNodeArea_63", 1.0f, "");
AddEnemyPatrolNode("servant_brute_2", "PathNodeArea_64", 1.0f, "");
AddEnemyPatrolNode("servant_brute_2", "PathNodeArea_65", 3.0f, "");
AddEnemyPatrolNode("servant_brute_2", "PathNodeArea_66", 1.0f, "");
AddEnemyPatrolNode("servant_brute_2", "PathNodeArea_67", 1.0f, "");
}
void stu(string &in asParent, string &in asChild, int alState)
{
SetEntityActive("servant_brute_3", true);
StartPlayerLookAt("servant_brute_3", 5, 5, "");
}

void acid(string &in asItem, string &in asEntity)
{

    AddTimer("music", 1, "TimerMusicDelay");

PlaySoundAtEntity("gameplay_acid_web.snt", "gameplay_acid_web.snt",

"gameplay_acid_web.snt", 0, false);

SetEntityActive("web_2", false);

RemoveItem("PickFinalAcid");

CreateParticleSystemAtEntity("", "ps_acid_web_dissolve.ps",

"ps_acid_web_dissolve.ps", false);
}
void TimerMusicDelay(string &in asTimer)
{
    PlayMusic("02_puzzle", false, 1, 0.1f, 10, false);
}
//////////////////////
//BEGIN ACID MACHINE//
/*Use jar on machine to place it under pipe
*/
void ItemJarOnMachine(string &in asItem, string &in asEntity)
{
    SetEntityActive("chemical_container_static_1", true);
    
    RemoveItem(asItem);
    
    PlaySoundAtEntity("PlaceJar","puzzle_place_jar",

"AreaCompleteSuccess", 0, false);
    
    SetLocalVarInt("chemical_container_static_1", 1);
}
/*Use chemicals on machine or valves to add it to bottles
*/
void AddChemical(string &in asItem, string &in asEntity)
{
    RemoveItem(asItem);
    
    AddLocalVarInt("ChemicalsInMachine", 1);
    
    SetEntityActive("JarEmpty"+asItem, false);
    SetEntityActive("Jar"+asItem, true);
    
    PlaySoundAtEntity(asItem+"Sound","puzzle_add_chemical.snt",

asEntity, 1, false);
    FadeLightTo("Light"+asItem, -1, -1, -1, -1, 0.5f, 0.1f);
    
    //Moved sanity boost to first instead of last, migth be better to

boost early if player didn't get all 4.
    //if(GetLocalVarInt("ChemicalsInMachine") == 1)
    //    GiveSanityBoostSmall();
        
    //if(GetLocalVarInt("ChemicalsInMachine") == 3 )
    //    BreakMyStairs();
    
    if(GetLocalVarInt("ChemicalsInMachine") == 4)
    {
        CompleteQuest("04FindChemicals","04FindChemicals");
        UnBlockHint("EntityWheel");
        for(int i=1;i<=4;i++)
            SetEntityPlayerInteractCallback("Valve_"+i,

"InteractAcidMachine02", true);    
    }
}
/*When touching the vales
*/
void InteractAcidMachine(string &in asEntity)
{
    if(GetLocalVarInt("ChemicalsInMachine") != 4)
    {
        AddQuest("04FindChemicals","04FindChemicals");
        SetMessage("Ch01Level04", "InteractAcidMachineNoChem",-1);
    }
    else if(GetLocalVarInt("ChemicalsInMachine") == 4)
    {
        SetWheelStuckState("ValveIgnite", 0, false);
    }
}
void InteractAcidMachine02(string &in asEntity)
{
    if(GetLocalVarInt("ValveIgniteFirst") == 0)
    {
        SetMessage("Ch01Level03", "MachineNeedsToStart", 0);
        SetLocalVarInt("ValveIgniteFirst", 1);
        for(int i=1;i<=4;i++)
            SetEntityPlayerInteractCallback("Valve_"+i,

"InteractAcidMachine", false);    
    }
}
/*Moving the big valve will turn on the burners and ready the machine
*/
void InteractTurnOnAcidMachine(string &in asName, string &in asMainEntity,

string &in asConnectEntity, int alState)
{
    AddDebugMessage("Connect "+asMainEntity+" and "+asConnectEntity+"

state:"+alState, false);
    
    if(alState == 1)
    {
        for(int i=1;i<=4;i++)
        {
            CreateParticleSystemAtEntity(asName+"Fire"+i,

"ps_fire_candle.ps", "Valve_"+i+"_AreaBottle", false);
            
            FadeLightTo("Valve_"+i+"_Light", -1, -1, -1, -1,

0.4f, 1);
            
            SetWheelStuckState("Valve_"+i, 0, true);
        }
        
        SetLocalVarInt("ValveIgniteFirst", 1);
        
        FadeLightTo("LightBurn", -1, -1, -1, -1, 3.0f, 2);
        
        PlaySoundAtEntity("IgniteSound", "general_fire_burning_low",

"Valve_1_AreaBottle", 1, false);
        
        SetWheelStuckState("ValveIgnite", 1, true);
    }
    else if(alState == -1)
    {
        for(int i=1;i<=4;i++){
            DestroyParticleSystem(asName+"Fire"+i);
            
            FadeLightTo("Valve_"+i+"_Light", -1, -1, -1, -1, 0,

1);
            
            SetWheelStuckState("Valve_"+i, -1, true);
        }         
        
        FadeLightTo("LightBurn", -1, -1, -1, -1, 0, 2);
        
        StopSound("IgniteSound", 1);
    }
}
/*Turning the four valves on/off to try and get the sequence right
*/
void InteractTurnValve(string &in asName, string &in asMainEntity, string

&in asConnectEntity, int alState)
{
    /*START WHAT HAPPENS WHEN VAVLES ARE TURNED ON
     */
    if(alState == 1)
    {

         /*Mark Valve as on
          */
        //SetLocalVarInt(asMainEntity, 1);
        AddLocalVarInt("ValvesNrOn", 1);
        
        AddDebugMessage("ValvesNrOn: "+GetLocalVarInt("ValvesNrOn")

+" And Feet "+GetLocalVarInt("DoBigFeet"), false);
        
        if(GetLocalVarInt("ValvesNrOn") == 0)
        {
            SetWheelStuckState("ValveIgnite", -1, true);

            PlaySoundAtEntity("FinalBoil","puzzle_boil.snt",

"Valve_4_AreaValve", 1, false);
            
            CreateParticleSystemAtEntity("FinalSteam",

"ps_acid_machine_bubble_large02.ps", "Valve_4_AreaValve", false);
            CreateParticleSystemAtEntity("FinalFlow",

"ps_acid_machine_bubble_end.ps", "AreaCompleteSuccess", false);
            
            FadeLightTo("LightBurn", -1, 1, -1, -1, 3.0f, 5);
            FadeLightTo("LightAcid", -1, -1, -1, -1, 0.3f, 2);
            
            AddTimer("done", 2, "TimerAcidDone");    
}
else DoEffectLarge(asName, asConnectEntity);
        /*Only an event, nothing puzzle related
         */
        if(GetLocalVarInt("ValvesNrOn") == -2 && GetLocalVarInt

("DoBigFeet") == 0)
        {
            AddTimer("Feet_1", 2.5f, "TimerBigFeet");
            PlaySoundAtEntity("bang","general_thunder.snt",

"Player", 0, false);
            PlaySoundAtEntity("biggus","04_big_feet.snt",

"Player", 0, false);
            SetLocalVarInt("DoBigFeet", 1);
        }
    }
    
    /*START WHAT HAPPENS WHEN VAVLES ARE TURNED OFF
     */
    else if(alState == -1)
    {
        AddLocalVarInt("ValvesNrOn", -1);
        
        DestroyParticleSystem(asName+"PSteam");
        StopSound(asName+"SBoil",1); StopSound(asName+"SSteam",1);
    }
    
    AddDebugMessage("Rate of success "+GetLocalVarInt("RoadToSuccess"),

false);
    AddDebugMessage(asMainEntity+" is turned to "+alState, true);
}
/*Large effects as correct valve rotated
*/
void DoEffectLarge(string &in asName, string &in asWhere)
{
    CreateParticleSystemAtEntity(asName+"PSteam",

"ps_acid_machine_bubble_large.ps", asWhere, false);
    
    PlaySoundAtEntity(asName+"SBoil","puzzle_boil_low.snt", asWhere, 1,

false);
    PlaySoundAtEntity(asName+"SSteam","puzzle_gas.snt", asWhere, 1,

false);
    
    AddLocalVarInt("RoadToSuccess", 1);
}
/*Small effects as incorrect valve rotated
*/
void DoEffectSmall(string &in asName, string &in asWhere)
{
    CreateParticleSystemAtEntity(asName+"PSteam",

"ps_acid_machine_bubble_small.ps", asWhere, false);
    
    PlaySoundAtEntity(asName+"SBoil","puzzle_boil_low.snt", asWhere, 1,

false);
}
/*When reseting machine on more than 2 valves turned, this timer turns it on

again
*/
void TimerReleaseValves(string &in asTimer)
{
    for(int i=1;i<=4;i++) SetWheelStuckState("Valve_"+i, 0, false);  
    
    SetLocalVarInt("RoadToSuccess", 0);
}
/*The acid spit on success, if no jar present the acid will just spill and

it is possible to try again
*/
void TimerAcidDone(string &in asTimer)
{
    DestroyParticleSystem("Part4PSteam");
    DestroyParticleSystem("FinalSteam");

    PlaySoundAtEntity("AcidDone","puzzle_acid", "AreaCompleteSuccess",

0, false);
    
    StopSound("FinalBoil",1);
    
    FadeLightTo("LightAcid", -1, -1, -1, -1, 0, 4);
    FadeLightTo("LightBurn", -1, 0.3f, -1, -1, 0, 3);
    
    SetWheelStuckState("ValveIgnite", 0, true);
    
    if(GetLocalVarInt("chemical_container_static_1") == 1)
    {
        SetEntityActive("chemical_container_static_1", false);
        SetEntityActive("chemical_container_2", true);
    
        PlaySoundAtEntity("AcidSuccess","puzzle_acid_success",

"AreaCompleteSuccess", 0, false);
        //GiveSanityBoostSmall();
        
        SetWheelStuckState("ValveIgnite", -1, true);
    }
    else
    {
        PlaySoundAtEntity("AcidFail","puzzle_acid_fail",

"AreaCompleteSuccess", 0, false);
        SetMessage("Ch03Level26", "NoContainerBelowSqueezer", 0);
    }
}

void PickFinalAcid(string &in asEntity, string &in asType)
{
    SetGlobalVarString(asEntity, asEntity);
}
//END ACID MACHINE//
////////////////////////////////////



I get an unexpected end of file error for the end of my script (//END ACID MACHINE//
////////////////////////////////////
)
(This post was last modified: 12-14-2010, 06:31 PM by LoneWolf.)
12-14-2010, 01:11 PM
Find


Messages In This Thread
Help! - by LoneWolf - 12-14-2010, 01:11 PM
RE: Help! - by DIGI Byte - 12-14-2010, 01:49 PM
RE: Help! - by LoneWolf - 12-14-2010, 03:54 PM
RE: Help! - by Akumasama - 12-14-2010, 05:26 PM
RE: Help! - by LoneWolf - 12-14-2010, 06:24 PM



Users browsing this thread: 1 Guest(s)