- #include(pwlib/pwlib.hlsl)
- //Sample function documentation
- [game]//drthingums is awesome!
- runscript("pw_initpwlib");
- runscript("pw_initpwbgs");
- changetitle("Loading characters...");
- runscript("pw_crosizesalternative");
- runscript("pw_createema");
- runscript("pw_createtrucy");
- runscript("pw_createphoenix");
- runscript("pw_createjudge");
- runscript("pw_createfranziska");
- loadtexture(70010,"PW/misc/pwdefaulttitle.png");
- loadtexture(-7000,"PW/CRO/CROWtYoungEma.png");
- loadtexture(-7001,"PW/CRO/CROJudge.png");
- loadtexture(-7002,"PW/CRO/CROPrFranziska.png");
- loadtexture(-7003,"PW/CRO/CRODfPhoenix.png");
- changetitle("Loading Psyche-Locks...");
- runscript("pw_initpsychelockgfx");
- changetitle("PWLib Tutorial Game");
- setbg(70010);
- runscript("pw_showmain");
- waitresponse();
- runscript("pw_hidemain");
- jumptoscript("case1");
- [case1]
- runscript("evidenceprofilecreation");
- setvar([evidencenumber],900);
- runscript("addevidence");
- setvar([evidencenumber],901);
- runscript("addevidence");
- setvar([profilenumber],800);
- runscript("addprofile");
- setvar([profilenumber],801);
- runscript("addprofile");
- jumptoscript("scn1");
- [evidenceprofilecreation]
- setvar([evidencenumber],900);
- setvar([evidencegfs],80901);
- setvar([evidencegfl],80901);
- setvar([evidencesup],0);
- setvar([evidencename],"Attorney's Badge");
- setvar([evidencesdesc],"Type: Other\n One of my possessions.");
- setvar([evidenceldesc],"It's my all important badge.\nIt shows that I'm a defense attorney.");
- runscript("createevidence");
- setvar([evidencenumber],901);
- setvar([evidencegfs],80900);
- setvar([evidencegfl],80900);
- setvar([evidencesup],0);
- setvar([evidencename],"Gun");
- setvar([evidencesdesc],"Type: Weapons\n Submitted as evidence\n by Prosecutor Von Karma.");
- setvar([evidenceldesc],"The murder weapon.\nIt was shot once.");
- runscript("createevidence");
- setvar([evidencenumber],902);
- setvar([evidencegfs],80902);
- setvar([evidencegfl],80902);
- setvar([evidencesup],1);
- setvar([evidencename],"Trucy GS4 Promo");
- setvar([evidencesdesc],"Type: Photo\nReceived from Trucy Wright.");
- setvar([evidenceldesc],"A promo photo of Gyakuten Saiban \n4.");
- runscript("createevidence");
- setvar([evidencestex],7000);
- runscript("setevidencepagesimple");
- setvar([profilenumber],800);
- setvar([profilegfs],90900);
- setvar([profilegfl],90900);
- setvar([profilename],"Ema Skye");
- setvar([profilesdesc],"Age: 19\nGender: Female");
- setvar([profileldesc],"An energetic girl that wants to be a \nforensic detective.");
- runscript("createprofile");
- setvar([profilenumber],801);
- setvar([profilegfs],90901);
- setvar([profilegfl],90901);
- setvar([profilename],"Trucy Wright");
- setvar([profilesdesc],"Age: 15\nGender: Female");
- setvar([profileldesc],"A cheerful magician girl.");
- runscript("createprofile");
- loadtexture(80900,"PW/evidence/gun.png");
- loadtexture(80901,"PW/evidence/lawyer badge.png");
- loadtexture(80902,"PW/evidence/phota.png");
- loadtexture(90900,"PW/profile/ema.png");
- loadtexture(90901,"PW/profile/minuki.png");
- setvar([evidencestex],7000);
- runscript("setevidencepagesimple");
- [scn1]
- runscript("showpwchar");
- runscript("pw_usepwbgcourthall");
- loadandplaymp3("music/02 - Courtroom Lobby ~ New Prelude.ogg",0,"N");
- runscript("pw_setnameboxtoema");
- runscript("setlipsynctochar");
- runscript("pw_enableemanormal");
- pw_showmsgbox();
- placefade("pw_char","char",60,"I");
- runscript("pw_showadvarrowmenu");
- message("Oh,hello!");
- message("My name is Ema Skye");
- runscript("pw_setnameboxtotrucy");
- runscript("pw_enabletrucynormal");
- message("Hello,I'm Trucy!\nI'm a magician!");
- message("This photo proves it.");
- runscript("pw_hidemessagebox");
- runscript("pw_raisetakethat");
- pw_showmsgbox();
- setvar([evidencenumber],902);
- runscript("addevidence");
- setvar([pw_headeviaddmsg],"");
- setvar([pw_taileviaddmsg]," was added\nto the Court Record.");
- runscript("pw_startevidenceadd");
- jumptoscript("scn2");
- runscript("pw_setnameboxtoema");
- runscript("pw_enableemanormal");
- runscript("setlipsynctochar");
- message("That's cool! But scientifically \nspeaking...");
- message("Magic doesn't exist.");
- runscript("pw_setnameboxtotrucy");
- runscript("pw_enabletrucynormal");
- message("Scientifically speaking...? \nHmmm...");
- message("But does magic needs to be \nproven?");
- runscript("setlipsynctonoone");
- runscript("pw_setnameboxtophoenix");
- message("(I better not try to argue \nin this one.)");
- runscript("setlipsynctochar");
- runscript("pw_enableemanormal");
- runscript("pw_setnameboxtoema");
- message("What do you think, Mr. \nWright?");
- runscript("setlipsynctonoone");
- runscript("pw_setnameboxtophoenix");
- message("Ah?");
- message("Well... Ah...");
- jumptoscript("presenttrucyevidence");
- [presenttrucyevidence]
- definevar([signal],"int");
- runscript("pw_setnameboxtonoone");
- messageauto("(Show what proves that Trucy is \na magician!)");
- runscript("pw_forcepresent");
- waitsignal("advance",[signal]);
- runscript("pw_hidemessagebox");
- loadandplaysfx("01_Phoenix - takethat.wav",0);
- runscript("pw_raisetakethat");
- wait(6);
- if(<compare([currentitemcode],"equal",902)>,<jumptoscript("presenttrucyevidencecorrect")>,<jumptoscript("presenttrucyevidencewrong")>);
- [presenttrucyevidencecorrect]
- pw_showmsgbox();
- runscript("pw_setnameboxtophoenix");
- message("What about this?");
- runscript("setlipsynctochar");
- runscript("pw_setnameboxtoema");
- runscript("pw_enableemanormal");
- message("You may be right.");
- message("But who gave you this?");
- jumptoscript("presenttrucyprofile");
- [presenttrucyevidencewrong]
- pw_showmsgbox();
- runscript("pw_setnameboxtophoenix");
- message("What about this?");
- runscript("setlipsynctochar");
- runscript("pw_setnameboxtoema");
- runscript("pw_enableemanormal");
- message("What is this supposed to mean \nanyway?");
- jumptoscript("presenttrucyevidence");
- [presenttrucyprofile]
- definevar([signal],"int");
- runscript("pw_setnameboxtonoone");
- runscript("setlipsynctonoone");
- messageauto("(Show who gave you this \nphoto!)");
- setvar([pwonetypepresent],2);
- runscript("pw_forcepresent");
- waitsignal("advance",[signal]);
- runscript("pw_hidemessagebox");
- runscript("pw_raisetakethat");
- wait(6);
- if(<compare([currentitemcode],"equal",801)>,<jumptoscript("presenttrucyprofilecorrect")>,<jumptoscript("presenttrucyprofilewrong")>);
- [presenttrucyprofilecorrect]
- pw_showmsgbox();
- runscript("pw_setnameboxtophoenix");
- message("What about this?");
- runscript("setlipsynctochar");
- runscript("pw_setnameboxtoema");
- runscript("pw_enableemanormal");
- runscript("setlipsynctochar");
- message("Hmmm, that is interesting...");
- jumptoscript("questionexample");
- [presenttrucyprofilewrong]
- pw_showmsgbox();
- runscript("pw_setnameboxtophoenix");
- message("What about this?");
- runscript("setlipsynctochar");
- runscript("pw_setnameboxtoema");
- runscript("pw_enableemanormal");
- runscript("setlipsynctochar");
- message("I'm not sure about this, you \nknow...!");
- jumptoscript("presenttrucyprofile");
- [simpleexamine]
- pw_showmsgbox();
- setbuttonarea("pw_examinearea1",157,302,81,23);
- setvar([pw_examinemaxplaces],1);
- runscript("pw_showtouchananswer");
- messageauto("So, what is wrong in this place?");
- runscript("hidepwmenu");
- runscript("pw_showspecialexamine");
- runscript("pw_waitexaminetouch");
- runscript("hidepwmenu");
- runscript("pw_showadvarrowmenu");
- runscript("pw_hidetouchananswer");
- if(<compare([pw_examinearea],"equal",1)>,<jumptoscript("simpleexaminecorrect")>,<jumptoscript("simpleexaminewrong")>);
- [simpleexaminecorrect]
- pw_showmsgbox();
- runscript("pw_setnameboxtophoenix");
- runscript("pw_setnameboxtonoone");
- message("Here!");
- runscript("setlipsynctochar");
- runscript("pw_setnameboxtoema");
- runscript("pw_enableemanormal");
- runscript("setlipsynctochar");
- message("Hmm, yeah, it looks \ninteresting...!");
- jumptoscript("questionexample");
- [simpleexaminewrong]
- pw_showmsgbox();
- runscript("pw_setnameboxtophoenix");
- runscript("pw_setnameboxtonoone");
- message("This is what proves... er...");
- runscript("setlipsynctochar");
- runscript("pw_setnameboxtoema");
- runscript("pw_enableemanormal");
- runscript("setlipsynctochar");
- message("I'm not sure about this, you \nknow...!");
- jumptoscript("simpleexamine");
- [questionexample]
- definevar([qreplysignal],"int");
- messageauto("But, what was Trucy's \nlast name again?");
- runscript("pw_showselectananswer");
- setvar([pw_maxquestions],4);
- setvar([pw_q1gfx],91000);
- setvar([pw_q2gfx],91010);
- setvar([pw_q3gfx],91020);
- setvar([pw_q4gfx],91030);
- runscript("hidepwmenu");
- runscript("pw_setupquestions");
- runscript("pw_showquestion");
- waitsignal("qreply",[qreplysignal]);
- runscript("pw_hideselectananswer");
- runscript("hidepwmenu");
- runscript("pw_showadvarrowmenu");
- if(<compare([qreplysignal],"equal",3)>,<jumptoscript("questionexamplecorrect")>,<jumptoscript("questionexamplewrong")>);
- [questionexamplewrong]
- message("That doesn't seem right...");
- jumptoscript("questionexample");
- [questionexamplecorrect]
- message("You're correct!");
- message("Now,to the court!");
- jumptoscript("scn2");
- [scn2]
- setgenobjgraphic("pw_crowitness",-7000);
- setgenobjgraphic("pw_crojudge",-7001);
- setgenobjgraphic("pw_croprosecutor",-7002);
- setgenobjgraphic("pw_croattorney",-7003);
- runscript("pw_showcourtroomoverview");
- wait(240);
- runscript("pw_hidecourtroomoverview");
- runscript("pw_showgavelhit");
- runscript("pw_showjudgetable");
- runscript("pw_enablejudgenormal");
- runscript("setlipsynctochar");
- runscript("showpwchar");
- runscript("pw_setnameboxtojudge");
- message("Court is now in session.\nThe trial of Ema Skye shall commence.");
- runscript("pw_showattorneystand");
- runscript("pw_setnameboxtophoenix");
- runscript("pw_enablephoenixnormal");
- message("The defense is ready,Your Honor.");
- setvar([sld_targetcharanim],"pw_enablefranziskanormal");
- runscript("pw_slideattoneytoprosecutor");
- runscript("pw_setnameboxtofranziska");
- message("The prosecution is ready,Your Honor.");
- jumptoscript("ematest1");
- [ematest1]
- stopmp3(0);
- runscript("showpwchar");
- runscript("pw_showwitnessstand");
- setvar([pw_crossmessage],"\n --The Knife--");
- setmsgboxtextcolor(255,0,255,0);
- pw_showmsgbox();
- runscript("pw_setnameboxtonoone");
- runscript("pw_enableemadown");
- messageinstantauto("\n --The Knife--");
- setmsgboxtextcolor(255,255,255,255);
- runscript("pw_showwitnesstestimony");
- runscript("pw_showtestimony");
- runscript("pw_setnameboxtoema");
- runscript("pw_enableemanormal");
- pw_showmsgbox();
- runscript("setlipsynctochar");
- loadandplaymp3("music/04 - Questioning ~ Moderato 2007.ogg",0,"N");
- message("I bought the knife from a local seller.");
- message("It cost me about $4.59.");
- runscript("pw_enableemadown");
- message("But the handle broke\nwhen I used it the first time.");
- runscript("pw_enableemanormal");
- message("I didn't throw it away\nbecause the blade was very good.");
- message("Shame they don't make the\nhandles to the same standard.");
- wait(10);
- jumptoscript("pctalk");
- [pctalk]
- setvar([sld_targetcharanim],"pw_enablefranziskanormal");
- runscript("pw_slidewitnesstoprosecutor");
- runscript("pw_setnameboxtofranziska");
- message("My hair is natural.");
- runscript("pw_usepsychelock1lock");
- messageappend("");
- runscript("pw_removepsychelock1lock");
- runscript("pw_hidepsychelock");
- wait(10);
- setvar([sld_targetcharanim],"pw_enableemanormal");
- runscript("pw_slideprosecutortowitness");
- jumptoscript("crossstart");
- [crossstart]
- setvar([pw_crossexamattorneycode],36);
- setvar([pw_crossexamprosecutorcode],31);
- pw_showmsgbox();
- runscript("pw_setnameboxtonoone");
- messageinstantauto("\n --The Knife--");
- runscript("pw_showcrossexaminationvs");
- runscript("pw_showpwmenubasicrec");
- runscript("hidepwmenu");
- runscript("begincrossexamination");
- setvar([pwcrossexamstages],4);
- pw_showmsgbox();
- jumptoscript("cross1-1");
- [cross1-1]
- definevar([signal],"int");
- setmsgboxtextcolor(255,0,255,0);
- runscript("pw_enableemaunsure");
- runscript("pw_setnameboxtoema");
- message("I bought the knife from a local seller");
- waitsignal("advance",[signal]);
- if(<compare([signal],"equal",1)>,<jumptoscript("cross1present")>,<null()>);//present
- if(<compare([signal],"equal",2)>,<jumptoscript("cross11press")>,<null()>);//press
- if(<compare([signal],"equal",4)>,<jumptoscript("cross1-2")>,<null()>);//next
- [cross11press]
- runscript("nextpwcrossexamsimple");
- jumptoscript("cross1-2");
- [cross1-2]
- definevar([signal],"int");
- setmsgboxtextcolor(255,0,255,0);
- runscript("pw_enableemaunsure");
- runscript("pw_setnameboxtoema");
- message("It cost me about $4.59.");
- waitsignal("advance",[signal]);
- if(<compare([signal],"equal",1)>,<jumptoscript("cross1present")>,<null()>);//present
- if(<compare([signal],"equal",2)>,<jumptoscript("cross12press")>,<null()>);//press
- if(<compare([signal],"equal",3)>,<jumptoscript("cross1-1")>,<null()>);//prev
- if(<compare([signal],"equal",4)>,<jumptoscript("cross1-3")>,<null()>);//next
- [cross12press]
- runscript("nextpwcrossexamsimple");
- jumptoscript("cross1-3");
- [cross1-3]
- definevar([signal],"int");
- setmsgboxtextcolor(255,0,255,0);
- runscript("pw_enableemaunsure");
- runscript("pw_setnameboxtoema");
- message("But the handle broke\nwhen I used it the first time.");
- waitsignal("advance",[signal]);
- if(<compare([signal],"equal",1)>,<jumptoscript("cross1present")>,<null()>);//present
- if(<compare([signal],"equal",2)>,<jumptoscript("cross13press")>,<null()>);//press
- if(<compare([signal],"equal",3)>,<jumptoscript("cross1-2")>,<null()>);//prev
- if(<compare([signal],"equal",4)>,<jumptoscript("cross1-4")>,<null()>);//next
- [cross13press]
- runscript("nextpwcrossexamsimple");
- jumptoscript("cross1-4");
- [cross1-4]
- definevar([signal],"int");
- setmsgboxtextcolor(255,0,255,0);
- runscript("pw_enableemaunsure");
- runscript("pw_setnameboxtoema");
- message("I didn't throw it away\nbecause the blade was very good.");
- waitsignal("advance",[signal]);
- if(<compare([signal],"equal",1)>,<jumptoscript("cross1present")>,<null()>);//present
- if(<compare([signal],"equal",2)>,<jumptoscript("cross14press")>,<null()>);//press
- if(<compare([signal],"equal",3)>,<jumptoscript("cross1-3")>,<null()>);//prev
- if(<compare([signal],"equal",4)>,<jumptoscript("crossend")>,<null()>);//next
- [cross14press]
- runscript("resumepwcrossexamsimple");
- jumptoscript("cross1-1");
- [cross1present]
- runscript("hidepwmenu");
- loadandplaysfx("phoenix-obj.wav",0);
- runscript("pw_raiseobjection");
- setvar([sld_targetcharanim],"pw_enablephoenixnormal");
- runscript("pw_slidewitnesstoattorney");
- runscript("pw_setnameboxtophoenix");
- runscript("pw_showadvarrowmenu");
- setvar([pw_lifeflash],20.0);
- runscript("pw_showlifebar");
- setmsgboxtextcolor(255,240,240,240);
- message("Your Honour,that statement\ncontradicts this evidence!");
- runscript("pw_showjudgetable");
- runscript("pw_enablejudgenormal");
- runscript("pw_setnameboxtojudge");
- message("How does it contradict\nthe evidence exactly?");
- runscript("pw_showattorneystand");
- runscript("pw_setnameboxtophoenix");
- runscript("pw_enablephoenixsweating");
- message("It doesn't,does it?");
- runscript("pw_showjudgetable");
- runscript("pw_enablejudgemad");
- runscript("pw_setnameboxtojudge");
- message("I'm sorry Mr Wright,\nbut I'm going to have to penalise you!");
- modifyvar([pw_lifecurrent],"subtract",20.0);
- setvar([pw_lifeflash],0.0);
- loadandplaysfx("sfx-damage2.wav",0);
- runscript("pw_hidelifebar");
- runscript("pw_showlifebar");
- runscript("hidepwmenu");
- runscript("pw_showwitnessstand");
- runscript("pw_enableemaunsure");
- runscript("showpwcrossexamination");
- jumptoscript("cross1-4");
- [crossend]
- runscript("resumepwcrossexamsimple");
- jumptoscript("cross1-1");
- [random] expands(hidepwmenu)
- loadandplaysfx("sfx-alitawings.wav",1);