Simplified code for responseToInput()

This commit is contained in:
Shih Han Lin 2017-12-02 14:16:39 +08:00
parent 57935ef10e
commit 4a7ee21a56
1 changed files with 41 additions and 58 deletions

View File

@ -114,116 +114,92 @@ class Amadeus {
} }
static void responseToInput(String input, Context context, Activity activity) { static void responseToInput(String input, Context context, Activity activity) {
Random randomgen = new Random(); VoiceLine[] specificLines;
input = input.toLowerCase(); input = input.toLowerCase();
if (containInput(input,context.getString(R.string.christina))) {
if (input.contains(context.getString(R.string.christina))) { specificLines = new VoiceLine[]{
VoiceLine[] specificLines = {
voiceLines[VoiceLine.Line.CHRISTINA], voiceLines[VoiceLine.Line.CHRISTINA],
voiceLines[VoiceLine.Line.WHY_CHRISTINA], voiceLines[VoiceLine.Line.WHY_CHRISTINA],
voiceLines[VoiceLine.Line.SHOULD_CHRISTINA], voiceLines[VoiceLine.Line.SHOULD_CHRISTINA],
voiceLines[VoiceLine.Line.NO_TINA] voiceLines[VoiceLine.Line.NO_TINA]
}; };
Amadeus.speak(specificLines[randomgen.nextInt(specificLines.length)], activity); } else if (containInput(input,context.getString(R.string.nullpo))) {
} else if (input.contains(context.getString(R.string.nullpo))) {
shaman_girls++; shaman_girls++;
if (shaman_girls < 5) { if(shaman_girls<5){
VoiceLine[] specificLines = { specificLines = new VoiceLine[]{
voiceLines[VoiceLine.Line.GAH], voiceLines[VoiceLine.Line.GAH],
voiceLines[VoiceLine.Line.GAH_EXTENDED] voiceLines[VoiceLine.Line.GAH_EXTENDED]
}; };
Amadeus.speak(specificLines[randomgen.nextInt(specificLines.length)], activity); }else {
} else { VoiceLine singleLine;
switch (shaman_girls) { switch (shaman_girls) {
case 5: case 5:
Amadeus.speak(new VoiceLine(R.raw.leskinen_awesome, VoiceLine.Mood.WINKING, R.string.line_Leskinen_awesome), activity); singleLine = new VoiceLine(R.raw.leskinen_awesome, VoiceLine.Mood.WINKING, R.string.line_Leskinen_awesome);
break; break;
case 6: case 6:
Amadeus.speak(new VoiceLine(R.raw.leskinen_nice, VoiceLine.Mood.WINKING, R.string.line_Leskinen_nice), activity); singleLine = new VoiceLine(R.raw.leskinen_nice, VoiceLine.Mood.WINKING, R.string.line_Leskinen_nice);
break; break;
case 7: case 7:
Amadeus.speak(new VoiceLine(R.raw.leskinen_oh_no, VoiceLine.Mood.WINKING, R.string.line_Leskinen_oh_no), activity); singleLine = new VoiceLine(R.raw.leskinen_oh_no, VoiceLine.Mood.WINKING, R.string.line_Leskinen_oh_no);
break; break;
case 8: case 8:
Amadeus.speak(new VoiceLine(R.raw.leskinen_shaman, VoiceLine.Mood.WINKING, R.string.line_Leskinen_shaman), activity); singleLine = new VoiceLine(R.raw.leskinen_shaman, VoiceLine.Mood.WINKING, R.string.line_Leskinen_shaman);
break; break;
case 9: case 9:
Amadeus.speak(new VoiceLine(R.raw.leskinen_holy_cow, VoiceLine.Mood.WINKING, R.string.line_Leskinen_holy_cow), activity); default:
singleLine = new VoiceLine(R.raw.leskinen_holy_cow, VoiceLine.Mood.WINKING, R.string.line_Leskinen_holy_cow);
shaman_girls = 0; shaman_girls = 0;
break; break;
} }
specificLines = new VoiceLine[]{singleLine};
} }
} else if (input.contains(context.getString(R.string.the_zombie)) } else if (containInput(input,context.getString(R.string.the_zombie),context.getString(R.string.celeb17))) {
|| input.contains(context.getString(R.string.celeb17))) { specificLines = new VoiceLine[]{voiceLines[VoiceLine.Line.DONT_CALL_ME_LIKE_THAT]};
Amadeus.speak(voiceLines[VoiceLine.Line.DONT_CALL_ME_LIKE_THAT], activity); } else if (containInput(input,context.getString(R.string.atchannel),context.getString(R.string.kurigohan),context.getString(R.string.kamehameha))) {
} else if (input.contains(context.getString(R.string.atchannel)) specificLines = new VoiceLine[]{
|| input.contains(context.getString(R.string.kurigohan))
|| input.contains(context.getString(R.string.kamehameha))) {
VoiceLine[] specificLines = {
voiceLines[VoiceLine.Line.SENPAI_DONT_TELL], voiceLines[VoiceLine.Line.SENPAI_DONT_TELL],
voiceLines[VoiceLine.Line.STILL_NOT_HAPPY] voiceLines[VoiceLine.Line.STILL_NOT_HAPPY]
}; };
Amadeus.speak(specificLines[randomgen.nextInt(specificLines.length)], activity); } else if (containInput(input,context.getString(R.string.salieri),context.getString(R.string.maho),context.getString(R.string.hiyajo))) {
} else if (input.contains(context.getString(R.string.salieri)) specificLines = new VoiceLine[]{
|| input.contains(context.getString(R.string.maho))
|| input.contains(context.getString(R.string.hiyajo))) {
VoiceLine[] specificLines = {
voiceLines[VoiceLine.Line.SENPAI_QUESTION], voiceLines[VoiceLine.Line.SENPAI_QUESTION],
voiceLines[VoiceLine.Line.SENPAI_WHAT_WE_TALKING], voiceLines[VoiceLine.Line.SENPAI_WHAT_WE_TALKING],
voiceLines[VoiceLine.Line.SENPAI_QUESTIONMARK], voiceLines[VoiceLine.Line.SENPAI_QUESTIONMARK],
voiceLines[VoiceLine.Line.SENPAI_WHO_IS_THIS] voiceLines[VoiceLine.Line.SENPAI_WHO_IS_THIS]
}; };
Amadeus.speak(specificLines[randomgen.nextInt(specificLines.length)], activity); } else if (containInput(input,context.getString(R.string.time_machine),context.getString(R.string.cern),context.getString(R.string.time_travel))) {
} else if (input.contains(context.getString(R.string.time_machine)) specificLines = new VoiceLine[]{
|| input.contains(context.getString(R.string.cern))
|| input.contains(context.getString(R.string.time_travel))) {
VoiceLine[] specificLines = {
voiceLines[VoiceLine.Line.TM_NONCENCE], voiceLines[VoiceLine.Line.TM_NONCENCE],
voiceLines[VoiceLine.Line.TM_YOU_SAID], voiceLines[VoiceLine.Line.TM_YOU_SAID],
voiceLines[VoiceLine.Line.TM_NO_EVIDENCE], voiceLines[VoiceLine.Line.TM_NO_EVIDENCE],
voiceLines[VoiceLine.Line.TM_DONT_KNOW], voiceLines[VoiceLine.Line.TM_DONT_KNOW],
voiceLines[VoiceLine.Line.TM_NOT_POSSIBLE] voiceLines[VoiceLine.Line.TM_NOT_POSSIBLE]
}; };
Amadeus.speak(specificLines[randomgen.nextInt(specificLines.length)], activity); } else if (containInput(input,context.getString(R.string.memory),context.getString(R.string.amadeus),context.getString(R.string.science))) {
} else if (input.contains(context.getString(R.string.memory)) specificLines = new VoiceLine[]{
|| input.contains(context.getString(R.string.amadeus))
|| input.contains(context.getString(R.string.science))) {
VoiceLine[] specificLines = {
voiceLines[VoiceLine.Line.HUMANS_SOFTWARE], voiceLines[VoiceLine.Line.HUMANS_SOFTWARE],
voiceLines[VoiceLine.Line.MEMORY_COMPLEXITY], voiceLines[VoiceLine.Line.MEMORY_COMPLEXITY],
voiceLines[VoiceLine.Line.SECRET_DIARY], voiceLines[VoiceLine.Line.SECRET_DIARY],
voiceLines[VoiceLine.Line.MODIFIYING_MEMORIES], voiceLines[VoiceLine.Line.MODIFIYING_MEMORIES],
voiceLines[VoiceLine.Line.MEMORIES_CHRISTINA] voiceLines[VoiceLine.Line.MEMORIES_CHRISTINA]
}; };
Amadeus.speak(specificLines[randomgen.nextInt(specificLines.length)], activity); } else if (containInput(input,context.getString(R.string.hello),context.getString(R.string.good_morning),context.getString(R.string.konnichiwa),context.getString(R.string.good_evening))) {
} else if (input.contains(context.getString(R.string.hello)) specificLines = new VoiceLine[]{
|| input.contains(context.getString(R.string.good_morning))
|| input.contains(context.getString(R.string.konnichiwa))
|| input.contains(context.getString(R.string.good_evening))) {
VoiceLine[] specificLines = {
voiceLines[VoiceLine.Line.HELLO], voiceLines[VoiceLine.Line.HELLO],
voiceLines[VoiceLine.Line.NICE_TO_MEET_OKABE], voiceLines[VoiceLine.Line.NICE_TO_MEET_OKABE],
voiceLines[VoiceLine.Line.PLEASED_TO_MEET], voiceLines[VoiceLine.Line.PLEASED_TO_MEET],
voiceLines[VoiceLine.Line.LOOKING_FORWARD_TO_WORKING] voiceLines[VoiceLine.Line.LOOKING_FORWARD_TO_WORKING]
}; };
Amadeus.speak(specificLines[randomgen.nextInt(specificLines.length)], activity); } else if (containInput(input,context.getString(R.string.nice_body),context.getString(R.string.hot),context.getString(R.string.sexy),context.getString(R.string.boobies),context.getString(R.string.oppai))) {
} else if (input.contains(context.getString(R.string.nice_body)) specificLines = new VoiceLine[]{
|| input.contains(context.getString(R.string.hot))
|| input.contains(context.getString(R.string.sexy))
|| input.contains(context.getString(R.string.boobies))
|| input.contains(context.getString(R.string.oppai))) {
VoiceLine[] specificLines = {
voiceLines[VoiceLine.Line.DEVILISH_PERVERT], voiceLines[VoiceLine.Line.DEVILISH_PERVERT],
voiceLines[VoiceLine.Line.PERVERT_CONFIRMED], voiceLines[VoiceLine.Line.PERVERT_CONFIRMED],
voiceLines[VoiceLine.Line.PERVERT_IDIOT] voiceLines[VoiceLine.Line.PERVERT_IDIOT]
}; };
Amadeus.speak(specificLines[randomgen.nextInt(specificLines.length)], activity); } else if (containInput(input,context.getString(R.string.robotics_notes),context.getString(R.string.antimatter))) {
} else if (input.contains(context.getString(R.string.robotics_notes)) specificLines = new VoiceLine[]{voiceLines[VoiceLine.Line.HEHEHE]};
|| input.contains(context.getString(R.string.antimatter))) {
Amadeus.speak(voiceLines[VoiceLine.Line.HEHEHE], activity);
} else { } else {
VoiceLine[] specificLines = { specificLines = new VoiceLine[]{
voiceLines[VoiceLine.Line.ASK_ME], voiceLines[VoiceLine.Line.ASK_ME],
voiceLines[VoiceLine.Line.WHAT_DO_YOU_WANT], voiceLines[VoiceLine.Line.WHAT_DO_YOU_WANT],
voiceLines[VoiceLine.Line.WHAT_IS_IT], voiceLines[VoiceLine.Line.WHAT_IS_IT],
@ -231,10 +207,17 @@ class Amadeus {
voiceLines[VoiceLine.Line.WHY_SAY_THAT], voiceLines[VoiceLine.Line.WHY_SAY_THAT],
voiceLines[VoiceLine.Line.YOU_SURE] voiceLines[VoiceLine.Line.YOU_SURE]
}; };
Amadeus.speak(specificLines[randomgen.nextInt(specificLines.length)], activity);
} }
int intTarget = 0;
if(specificLines.length>1){intTarget = new Random().nextInt(specificLines.length);}
Amadeus.speak(specificLines[intTarget], activity);
}
private static boolean containInput(final String input, final String... strings){
for(String s:strings){
if(input.contains(s)) return true;
}
return false;
} }
static void openApp(String[] input, Activity activity) { static void openApp(String[] input, Activity activity) {
final PackageManager pm = activity.getPackageManager(); final PackageManager pm = activity.getPackageManager();
List<ApplicationInfo> packages = pm.getInstalledApplications(PackageManager.GET_META_DATA); List<ApplicationInfo> packages = pm.getInstalledApplications(PackageManager.GET_META_DATA);