commit f527d1b0492114c4f15fae71ff469320466dc44e Author: sigonasr2 Date: Wed Sep 26 21:02:00 2018 -0500 Initial Commit (without the client token...) Bandori stickers in Discord~ diff --git a/BandoriBot/.classpath b/BandoriBot/.classpath new file mode 100644 index 0000000..b6c396b --- /dev/null +++ b/BandoriBot/.classpath @@ -0,0 +1,7 @@ + + + + + + + diff --git a/BandoriBot/.gitignore b/BandoriBot/.gitignore new file mode 100644 index 0000000..ae3c172 --- /dev/null +++ b/BandoriBot/.gitignore @@ -0,0 +1 @@ +/bin/ diff --git a/BandoriBot/.project b/BandoriBot/.project new file mode 100644 index 0000000..9026f1f --- /dev/null +++ b/BandoriBot/.project @@ -0,0 +1,17 @@ + + + BandoriBot + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/BandoriBot/.settings/org.eclipse.jdt.core.prefs b/BandoriBot/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..bb35fa0 --- /dev/null +++ b/BandoriBot/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,11 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.8 diff --git a/BandoriBot/BandoriBot.jar b/BandoriBot/BandoriBot.jar new file mode 100644 index 0000000..5888de2 Binary files /dev/null and b/BandoriBot/BandoriBot.jar differ diff --git a/BandoriBot/src/sig/BandoriBot.java b/BandoriBot/src/sig/BandoriBot.java new file mode 100644 index 0000000..9098a12 --- /dev/null +++ b/BandoriBot/src/sig/BandoriBot.java @@ -0,0 +1,143 @@ +package sig; +import java.io.File; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; + +import javax.security.auth.login.LoginException; + +import net.dv8tion.jda.core.JDA; +import net.dv8tion.jda.core.JDABuilder; +import net.dv8tion.jda.core.entities.Channel; +import net.dv8tion.jda.core.entities.ChannelType; +import net.dv8tion.jda.core.entities.Member; +import net.dv8tion.jda.core.entities.MessageChannel; +import net.dv8tion.jda.core.events.Event; +import net.dv8tion.jda.core.events.ReadyEvent; +import net.dv8tion.jda.core.events.message.MessageReceivedEvent; +import net.dv8tion.jda.core.hooks.ListenerAdapter; + +public class BandoriBot extends ListenerAdapter{ + final public static String BASEDIR = "./"; + public static HashMap> stamp_map = new HashMap>(); + + public static void main(String[] arguments) { + populateStampMap(); + String[] filedata = FileUtils.readFromFile(BASEDIR+"clientToken.txt"); + try { + JDA bot = new JDABuilder(filedata[0]) + .addEventListener(new BandoriBot()).build(); + bot.awaitReady(); + } catch (LoginException | InterruptedException e) { + e.printStackTrace(); + } + } + + public static void populateStampMap() { + stamp_map.put("kasumi_gogo",Arrays.asList("gogo")); + stamp_map.put("tae_letsplay",Arrays.asList("playtogether","wanttoplay","multilive","letsplay")); + stamp_map.put("rimi_choco",Arrays.asList("choco","cornet")); + stamp_map.put("saya_bread",Arrays.asList("bread")); + stamp_map.put("arisa_doki",Arrays.asList("doki")); + stamp_map.put("ran_same",Arrays.asList("sameasalways","alwayssame","alwaysthesame")); + stamp_map.put("moca_youdidit",Arrays.asList("youdidit","congratulations","buns","mocatastic")); + stamp_map.put("himari_heyheyhoh",Arrays.asList("heyo","heyhey","hihi","hiyo")); + stamp_map.put("tomoe_letsdothis",Arrays.asList("letsdothis","letsdoit")); + stamp_map.put("tsugumi_wecandoit",Arrays.asList("wegotthis","wegotit","wecan")); + stamp_map.put("kokoro_happylucky",Arrays.asList("happy!","lucky")); + stamp_map.put("kaoru_fleeting",Arrays.asList("fleeting")); + stamp_map.put("aya_fever",Arrays.asList("fever","ayay")); + stamp_map.put("hagumi_smileyay",Arrays.asList("smileyay","yay")); + stamp_map.put("kanon_fuee",Arrays.asList("fue","waa","reee")); + stamp_map.put("misaki_ready",Arrays.asList("amready","beenready","ready!")); + stamp_map.put("hina_fullcombo",Arrays.asList("fcd","fullcombo","nomiss","allperfect","notasinglemiss","thefc","anfc","fullperfect")); + stamp_map.put("chisato_planned",Arrays.asList("justasplanned","allplanned","calculated","thatcoming")); + stamp_map.put("maya_huhehe",Arrays.asList("hehe","huehe","huehue")); + stamp_map.put("eve_bushido",Arrays.asList("bushido")); + stamp_map.put("yukina_notbad",Arrays.asList("notbad","veryclose")); + stamp_map.put("sayo_goodwork",Arrays.asList("goodwork","goodjob","nicejob","welldone","greatwork","greatjob")); + stamp_map.put("lisa_nextonelastone",Arrays.asList("lastone","mylast")); + stamp_map.put("ako_onemoretime",Arrays.asList("onemore","goagain","keepgoing","dontstop")); + stamp_map.put("rinko_jam",Arrays.asList("lovethissong","jam")); + stamp_map.put("marina_yeahyeah",Arrays.asList("yeahyeah","letsgo")); + stamp_map.put("kokoro_moremore",Arrays.asList("moremore","iwantmore")); + stamp_map.put("arisa_huh",Arrays.asList("huh?","hh?","yy?","aat?","aa?","tt?","nani","nand")); + stamp_map.put("yukina_followmylead",Arrays.asList("followmylead","takethelead","guideyou","fullydevoted")); + stamp_map.put("kaoru_suchalovelyevening",Arrays.asList("goodevening","lovelyevening","beautifulnight","grandnight","wonderfulevening")); + stamp_map.put("rimi_congrats",Arrays.asList("grats")); + stamp_map.put("ran_somethingbigiscoming",Arrays.asList("somethingbig","iscoming")); + stamp_map.put("tsugumi_comeon",Arrays.asList("comeon","dontbeafraid","dontbeshy","tsugurific")); + stamp_map.put("tae_fufusocute",Arrays.asList("socute","kawaii","fufu","adorable","cute")); + stamp_map.put("eve_marchintobattle",Arrays.asList("marchintobattle","chargeintobattle")); + stamp_map.put("saya_illtry",Arrays.asList("illtry","itachance","itatry","atleastonce")); + stamp_map.put("lisa_imsohappy",Arrays.asList("ecstatic","sohappy","toohappy")); + stamp_map.put("sayo_ohwell",Arrays.asList("ohwell","ahwell","youtried")); + stamp_map.put("ako_areyouokay",Arrays.asList("youok","beok","daijo")); + stamp_map.put("chisato_thisissomuchfun",Arrays.asList("muchfun","veryfun","reallyfun","extremelyfun","offun")); + stamp_map.put("rinko_theresnoway",Arrays.asList("noway")); + stamp_map.put("tae_thisisgreat",Arrays.asList("thisisgreat","thisisawesome","thisiswonderful")); + stamp_map.put("moca_thisisgettinginteresting",Arrays.asList("gettinginteresting","thingsaregetting","thisisgetting")); + stamp_map.put("kaoru_takemyhand",Arrays.asList("takemyhand","allowmeto","demonstrate","romeo")); + stamp_map.put("kokoro_letsmaketheworldsmile",Arrays.asList("hhw","happyworld","hellohappy","worldsmile")); + stamp_map.put("hina_nowwereboppin",Arrays.asList("bop","nowwere")); + } + + public static void checkForStamp(MessageChannel channel, String user,String message) { + boolean foundmatch = false; + message = message.toLowerCase().replaceAll("[ ]", ""); + for (String key : stamp_map.keySet()) { + for (String message_search : stamp_map.get(key)) { + String filteredmessage = message; + filteredmessage = filteredmessage.replaceAll("[^A-Za-z0-9]",""); + System.out.println(filteredmessage); + if (message_search.contains("?") || message_search.contains("!")) { + if (message.contains(message_search)) { + foundmatch = true; + CreateStamp(channel,key); + System.out.println("Stamp "+key+" created by user "+user+" MESSAGE:"+message+"."); + break; + } + } else { + if (filteredmessage.contains(message_search)) { + foundmatch=true; + CreateStamp(channel,key); + System.out.println("Stamp "+key+" created by user "+user+" MESSAGE:"+message+"."); + break; + } + } + } + if (foundmatch) { + return; + } + } + } + + public static void CreateStamp(MessageChannel channel, String stamp_name) { + channel.sendFile(new File(BASEDIR+"stamps/"+stamp_name+".png")).queue(); + } + + @Override + public void onMessageReceived(MessageReceivedEvent ev) { + JDA bot = ev.getJDA(); + + String message = ev.getMessage().getContentDisplay(); + MessageChannel messaging_channel = ev.getChannel(); + + if (ev.isFromType(ChannelType.TEXT)) { + Channel channel = ev.getTextChannel(); + Member user = ev.getMember(); + + System.out.println("Channel "+channel+": "+user+" - "+message); + + if (user.getUser().getId().equalsIgnoreCase("494666451765035009")) { + return; + } + + if (channel.getId().equalsIgnoreCase("485297375665979414")) { + System.out.println("Detected in Bandori Channel...."); + checkForStamp(messaging_channel,user.getNickname(),message); + } + } + + } +} diff --git a/BandoriBot/src/sig/FileUtils.java b/BandoriBot/src/sig/FileUtils.java new file mode 100644 index 0000000..b705d3e --- /dev/null +++ b/BandoriBot/src/sig/FileUtils.java @@ -0,0 +1,306 @@ +package sig; + +import java.io.BufferedReader; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.FileReader; +import java.io.FileWriter; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.PrintWriter; +import java.io.Reader; +import java.net.URL; +import java.nio.channels.FileChannel; +import java.nio.charset.Charset; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; + +import org.json.JSONArray; +import org.json.JSONException; +import org.json.JSONObject; + +import sig.sigIRC; +import sig.modules.ChatLog.ChatLogMessage; + +public class FileUtils { + public static String[] readFromFile(String filename) { + File file = new File(filename); + //System.out.println(file.getAbsolutePath()); + List contents= new ArrayList(); + if (file.exists()) { + try( + FileReader fw = new FileReader(filename); + BufferedReader bw = new BufferedReader(fw);) + { + String readline = bw.readLine(); + do { + if (readline!=null) { + //System.out.println(readline); + contents.add(readline); + readline = bw.readLine(); + }} while (readline!=null); + fw.close(); + bw.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + return contents.toArray(new String[contents.size()]); + } + + private static String readAll(Reader rd) throws IOException { + StringBuilder sb = new StringBuilder(); + int cp; + while ((cp = rd.read()) != -1) { + sb.append((char) cp); + } + return sb.toString(); + } + + private static String readFilter(Reader rd, HashMap channel_ids) throws IOException { + StringBuilder sb = new StringBuilder(); + boolean allowed=false; + boolean quotation_mark=false; + boolean endquotation_mark=false; + boolean foundChannel=false; + boolean nextBrace=false; + boolean outputStuff=false; + String numb = ""; + int braceCount=0; + int channelCount=0; + int vals=0; + int cp; + while ((cp = rd.read()) != -1) { + if (braceCount==0) { + allowed=true; + } else + if (braceCount==1 && !quotation_mark){ + quotation_mark=true; + numb=""; + allowed=false; + } else + if (!endquotation_mark) { + if ((char)cp >= '0' && + (char)cp <= '9') { + allowed=false; + numb+=(char)cp; + } else { + allowed=false; + endquotation_mark=true; + try { + if (channel_ids.containsKey(Long.parseLong(numb))) { + if (channelCount>=1) { + sb.append(","); + } + sb.append("\""+numb+"\""); + foundChannel=true; + System.out.println("Found channel "+numb); + outputStuff=true; + } + } catch (NumberFormatException e) { + + } + } + } else + if (!nextBrace && foundChannel) { + allowed=true; + if ((char)cp == '{') { + nextBrace=true; + } + } else + if (foundChannel) { + allowed=true; + if (braceCount==1) { + allowed=false; + channelCount++; + quotation_mark=false; + endquotation_mark=false; + foundChannel=false; + nextBrace=false; + } + } else { + allowed=false; + if (braceCount==1) { + allowed=false; + quotation_mark=false; + endquotation_mark=false; + foundChannel=false; + nextBrace=false; + } + } + + /*if (outputStuff && vals++<1000) { + System.out.print((char)cp); + }*/ + if ((char)cp == '{') { + braceCount++; + //System.out.println("Brace count is "+braceCount+"."); + } else + if ((char)cp == '}') { + braceCount--; + //System.out.println("Brace count is "+braceCount+"."); + } + + if (allowed) { + sb.append((char) cp); + } + } + sb.append("}"); + //System.out.println("============="); + //System.out.println(sb.toString()); + return sb.toString(); + } + + public static JSONObject readJsonFromUrlWithFilter(String url, HashMap filter) throws IOException, JSONException { + return readJsonFromUrlWithFilter(url,filter,null,false); + } + + public static JSONObject readJsonFromFileWithFilter(String file, HashMap filter) throws IOException, JSONException { + InputStream is = new FileInputStream(new File(file)); + try { + BufferedReader rd = new BufferedReader(new InputStreamReader(is, Charset.forName("UTF-8"))); + String jsonText = readFilter(rd,filter); + JSONObject json = new JSONObject(jsonText); + jsonText=null; + return json; + } finally { + is.close(); + } + } + + public static JSONObject readJsonFromUrlWithFilter(String url, HashMap filter, String file, boolean writeToFile) throws IOException, JSONException { + InputStream is = new URL(url).openStream(); + try { + BufferedReader rd = new BufferedReader(new InputStreamReader(is, Charset.forName("UTF-8"))); + String jsonText = readFilter(rd,filter); + if (writeToFile) { + writetoFile(new String[]{jsonText},file); + } + JSONObject json = new JSONObject(jsonText); + return json; + } finally { + is.close(); + } + } + + public static JSONObject readJsonFromUrl(String url) throws IOException, JSONException { + return readJsonFromUrl(url,null,false); + } + + public static JSONArray readJsonArrayFromUrl(String url) throws IOException, JSONException { + return readJsonArrayFromUrl(url,null,false); + } + + public static JSONObject readJsonFromFile(String file) throws IOException, JSONException { + InputStream is = new FileInputStream(new File(file)); + try { + BufferedReader rd = new BufferedReader(new InputStreamReader(is, Charset.forName("UTF-8"))); + String jsonText = readAll(rd); + JSONObject json = new JSONObject(jsonText); + jsonText=null; + return json; + } finally { + is.close(); + } + } + + public static JSONObject readJsonFromUrl(String url, String file, boolean writeToFile) throws IOException, JSONException { + InputStream is = new URL(url).openStream(); + try { + BufferedReader rd = new BufferedReader(new InputStreamReader(is, Charset.forName("UTF-8"))); + String jsonText = readAll(rd); + if (writeToFile) { + writetoFile(new String[]{jsonText},file); + } + JSONObject json = new JSONObject(jsonText); + return json; + } finally { + is.close(); + } + } + + public static JSONArray readJsonArrayFromUrl(String url, String file, boolean writeToFile) throws IOException, JSONException { + InputStream is = new URL(url).openStream(); + try { + BufferedReader rd = new BufferedReader(new InputStreamReader(is, Charset.forName("UTF-8"))); + String jsonText = readAll(rd); + if (writeToFile) { + writetoFile(new String[]{jsonText},file); + } + JSONArray json = new JSONArray(jsonText); + return json; + } finally { + is.close(); + } + } + + public static void logToFile(String message, String filename) { + logToFile(message,filename,false); + } + + public static void logToFile(String message, String filename, boolean outputToChatLog) { + File file = new File(filename); + try { + + if (!file.exists()) { + file.createNewFile(); + } + + FileWriter fw = new FileWriter(file, true); + PrintWriter pw = new PrintWriter(fw); + + pw.println(message); + pw.flush(); + pw.close(); + } catch (IOException e) { + e.printStackTrace(); + } + if (outputToChatLog && sigIRC.chatlogmodule_enabled) { + ChatLogMessage.importMessages(message); + } + } + + public static void writetoFile(String[] data, String filename) { + File file = new File(filename); + try { + + if (!file.exists()) { + file.createNewFile(); + } + + FileWriter fw = new FileWriter(file,false); + PrintWriter pw = new PrintWriter(fw); + + for (String s : data) { + pw.println(s); + } + pw.flush(); + pw.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + public static void copyFile(File source, File dest) throws IOException { + FileChannel sourceChannel = null; + FileChannel destChannel = null; + try { + sourceChannel = new FileInputStream(source).getChannel(); + destChannel = new FileOutputStream(dest).getChannel(); + destChannel.transferFrom(sourceChannel, 0, sourceChannel.size()); + }finally{ + sourceChannel.close(); + destChannel.close(); + } + } + + public static void deleteFile(String filename) { + File file = new File(filename); + if (file.exists()) { + file.delete(); + } + } +} diff --git a/BandoriBot/src/sig/MessageListener.java b/BandoriBot/src/sig/MessageListener.java new file mode 100644 index 0000000..a2cf700 --- /dev/null +++ b/BandoriBot/src/sig/MessageListener.java @@ -0,0 +1,5 @@ +package sig; + +public class MessageListener { + +} diff --git a/BandoriBot/stamps/ako_areyouokay.png b/BandoriBot/stamps/ako_areyouokay.png new file mode 100644 index 0000000..3b54390 Binary files /dev/null and b/BandoriBot/stamps/ako_areyouokay.png differ diff --git a/BandoriBot/stamps/ako_onemoretime.png b/BandoriBot/stamps/ako_onemoretime.png new file mode 100644 index 0000000..f9ab1fc Binary files /dev/null and b/BandoriBot/stamps/ako_onemoretime.png differ diff --git a/BandoriBot/stamps/arisa_doki.png b/BandoriBot/stamps/arisa_doki.png new file mode 100644 index 0000000..bb39a3e Binary files /dev/null and b/BandoriBot/stamps/arisa_doki.png differ diff --git a/BandoriBot/stamps/arisa_huh.png b/BandoriBot/stamps/arisa_huh.png new file mode 100644 index 0000000..580178b Binary files /dev/null and b/BandoriBot/stamps/arisa_huh.png differ diff --git a/BandoriBot/stamps/aya_fever.png b/BandoriBot/stamps/aya_fever.png new file mode 100644 index 0000000..eb56f8e Binary files /dev/null and b/BandoriBot/stamps/aya_fever.png differ diff --git a/BandoriBot/stamps/chisato_planned.png b/BandoriBot/stamps/chisato_planned.png new file mode 100644 index 0000000..2edf432 Binary files /dev/null and b/BandoriBot/stamps/chisato_planned.png differ diff --git a/BandoriBot/stamps/chisato_thisissomuchfun.png b/BandoriBot/stamps/chisato_thisissomuchfun.png new file mode 100644 index 0000000..e76bfb3 Binary files /dev/null and b/BandoriBot/stamps/chisato_thisissomuchfun.png differ diff --git a/BandoriBot/stamps/eve_bushido.png b/BandoriBot/stamps/eve_bushido.png new file mode 100644 index 0000000..010720a Binary files /dev/null and b/BandoriBot/stamps/eve_bushido.png differ diff --git a/BandoriBot/stamps/eve_marchintobattle.png b/BandoriBot/stamps/eve_marchintobattle.png new file mode 100644 index 0000000..b5a9258 Binary files /dev/null and b/BandoriBot/stamps/eve_marchintobattle.png differ diff --git a/BandoriBot/stamps/hagumi_smileyay.png b/BandoriBot/stamps/hagumi_smileyay.png new file mode 100644 index 0000000..2c98854 Binary files /dev/null and b/BandoriBot/stamps/hagumi_smileyay.png differ diff --git a/BandoriBot/stamps/himari_heyheyhoh.png b/BandoriBot/stamps/himari_heyheyhoh.png new file mode 100644 index 0000000..90bf87f Binary files /dev/null and b/BandoriBot/stamps/himari_heyheyhoh.png differ diff --git a/BandoriBot/stamps/hina_fullcombo.png b/BandoriBot/stamps/hina_fullcombo.png new file mode 100644 index 0000000..c39b9e3 Binary files /dev/null and b/BandoriBot/stamps/hina_fullcombo.png differ diff --git a/BandoriBot/stamps/hina_nowwereboppin.png b/BandoriBot/stamps/hina_nowwereboppin.png new file mode 100644 index 0000000..da6a87d Binary files /dev/null and b/BandoriBot/stamps/hina_nowwereboppin.png differ diff --git a/BandoriBot/stamps/kanon_fuee.png b/BandoriBot/stamps/kanon_fuee.png new file mode 100644 index 0000000..c6607f3 Binary files /dev/null and b/BandoriBot/stamps/kanon_fuee.png differ diff --git a/BandoriBot/stamps/kaoru_fleeting.png b/BandoriBot/stamps/kaoru_fleeting.png new file mode 100644 index 0000000..c18322d Binary files /dev/null and b/BandoriBot/stamps/kaoru_fleeting.png differ diff --git a/BandoriBot/stamps/kaoru_suchalovelyevening.png b/BandoriBot/stamps/kaoru_suchalovelyevening.png new file mode 100644 index 0000000..ba46d1c Binary files /dev/null and b/BandoriBot/stamps/kaoru_suchalovelyevening.png differ diff --git a/BandoriBot/stamps/kaoru_takemyhand.png b/BandoriBot/stamps/kaoru_takemyhand.png new file mode 100644 index 0000000..1d535ff Binary files /dev/null and b/BandoriBot/stamps/kaoru_takemyhand.png differ diff --git a/BandoriBot/stamps/kasumi_gogo.png b/BandoriBot/stamps/kasumi_gogo.png new file mode 100644 index 0000000..49e0398 Binary files /dev/null and b/BandoriBot/stamps/kasumi_gogo.png differ diff --git a/BandoriBot/stamps/kokoro_happylucky.png b/BandoriBot/stamps/kokoro_happylucky.png new file mode 100644 index 0000000..f31bc91 Binary files /dev/null and b/BandoriBot/stamps/kokoro_happylucky.png differ diff --git a/BandoriBot/stamps/kokoro_letsmaketheworldsmile.png b/BandoriBot/stamps/kokoro_letsmaketheworldsmile.png new file mode 100644 index 0000000..2f853e4 Binary files /dev/null and b/BandoriBot/stamps/kokoro_letsmaketheworldsmile.png differ diff --git a/BandoriBot/stamps/kokoro_moremore.png b/BandoriBot/stamps/kokoro_moremore.png new file mode 100644 index 0000000..cfc2165 Binary files /dev/null and b/BandoriBot/stamps/kokoro_moremore.png differ diff --git a/BandoriBot/stamps/lisa_imsohappy.png b/BandoriBot/stamps/lisa_imsohappy.png new file mode 100644 index 0000000..5fe7edf Binary files /dev/null and b/BandoriBot/stamps/lisa_imsohappy.png differ diff --git a/BandoriBot/stamps/lisa_nextonelastone.png b/BandoriBot/stamps/lisa_nextonelastone.png new file mode 100644 index 0000000..b19d234 Binary files /dev/null and b/BandoriBot/stamps/lisa_nextonelastone.png differ diff --git a/BandoriBot/stamps/marina_yeahyeah.png b/BandoriBot/stamps/marina_yeahyeah.png new file mode 100644 index 0000000..4a5838f Binary files /dev/null and b/BandoriBot/stamps/marina_yeahyeah.png differ diff --git a/BandoriBot/stamps/maya_huhehe.png b/BandoriBot/stamps/maya_huhehe.png new file mode 100644 index 0000000..c8301df Binary files /dev/null and b/BandoriBot/stamps/maya_huhehe.png differ diff --git a/BandoriBot/stamps/misaki_ready.png b/BandoriBot/stamps/misaki_ready.png new file mode 100644 index 0000000..f246d8d Binary files /dev/null and b/BandoriBot/stamps/misaki_ready.png differ diff --git a/BandoriBot/stamps/moca_thisisgettinginteresting.png b/BandoriBot/stamps/moca_thisisgettinginteresting.png new file mode 100644 index 0000000..30e085c Binary files /dev/null and b/BandoriBot/stamps/moca_thisisgettinginteresting.png differ diff --git a/BandoriBot/stamps/moca_youdidit.png b/BandoriBot/stamps/moca_youdidit.png new file mode 100644 index 0000000..6c85071 Binary files /dev/null and b/BandoriBot/stamps/moca_youdidit.png differ diff --git a/BandoriBot/stamps/ran_same.png b/BandoriBot/stamps/ran_same.png new file mode 100644 index 0000000..6945cdd Binary files /dev/null and b/BandoriBot/stamps/ran_same.png differ diff --git a/BandoriBot/stamps/ran_somethingbigiscoming.png b/BandoriBot/stamps/ran_somethingbigiscoming.png new file mode 100644 index 0000000..7200a03 Binary files /dev/null and b/BandoriBot/stamps/ran_somethingbigiscoming.png differ diff --git a/BandoriBot/stamps/rimi_choco.png b/BandoriBot/stamps/rimi_choco.png new file mode 100644 index 0000000..9440f01 Binary files /dev/null and b/BandoriBot/stamps/rimi_choco.png differ diff --git a/BandoriBot/stamps/rimi_congrats.png b/BandoriBot/stamps/rimi_congrats.png new file mode 100644 index 0000000..bd74be1 Binary files /dev/null and b/BandoriBot/stamps/rimi_congrats.png differ diff --git a/BandoriBot/stamps/rinko_jam.png b/BandoriBot/stamps/rinko_jam.png new file mode 100644 index 0000000..9940624 Binary files /dev/null and b/BandoriBot/stamps/rinko_jam.png differ diff --git a/BandoriBot/stamps/rinko_theresnoway.png b/BandoriBot/stamps/rinko_theresnoway.png new file mode 100644 index 0000000..5280d15 Binary files /dev/null and b/BandoriBot/stamps/rinko_theresnoway.png differ diff --git a/BandoriBot/stamps/saya_bread.png b/BandoriBot/stamps/saya_bread.png new file mode 100644 index 0000000..4d894c5 Binary files /dev/null and b/BandoriBot/stamps/saya_bread.png differ diff --git a/BandoriBot/stamps/saya_illtry.png b/BandoriBot/stamps/saya_illtry.png new file mode 100644 index 0000000..e61c03e Binary files /dev/null and b/BandoriBot/stamps/saya_illtry.png differ diff --git a/BandoriBot/stamps/sayo_goodwork.png b/BandoriBot/stamps/sayo_goodwork.png new file mode 100644 index 0000000..b313471 Binary files /dev/null and b/BandoriBot/stamps/sayo_goodwork.png differ diff --git a/BandoriBot/stamps/sayo_ohwell.png b/BandoriBot/stamps/sayo_ohwell.png new file mode 100644 index 0000000..40a104b Binary files /dev/null and b/BandoriBot/stamps/sayo_ohwell.png differ diff --git a/BandoriBot/stamps/tae_fufusocute.png b/BandoriBot/stamps/tae_fufusocute.png new file mode 100644 index 0000000..1804ff2 Binary files /dev/null and b/BandoriBot/stamps/tae_fufusocute.png differ diff --git a/BandoriBot/stamps/tae_letsplay.png b/BandoriBot/stamps/tae_letsplay.png new file mode 100644 index 0000000..8c57f37 Binary files /dev/null and b/BandoriBot/stamps/tae_letsplay.png differ diff --git a/BandoriBot/stamps/tae_thisisgreat.png b/BandoriBot/stamps/tae_thisisgreat.png new file mode 100644 index 0000000..3a9d998 Binary files /dev/null and b/BandoriBot/stamps/tae_thisisgreat.png differ diff --git a/BandoriBot/stamps/tomoe_letsdothis.png b/BandoriBot/stamps/tomoe_letsdothis.png new file mode 100644 index 0000000..561a69f Binary files /dev/null and b/BandoriBot/stamps/tomoe_letsdothis.png differ diff --git a/BandoriBot/stamps/tsugumi_comeon.png b/BandoriBot/stamps/tsugumi_comeon.png new file mode 100644 index 0000000..37f782d Binary files /dev/null and b/BandoriBot/stamps/tsugumi_comeon.png differ diff --git a/BandoriBot/stamps/tsugumi_wecandoit.png b/BandoriBot/stamps/tsugumi_wecandoit.png new file mode 100644 index 0000000..2583bfb Binary files /dev/null and b/BandoriBot/stamps/tsugumi_wecandoit.png differ diff --git a/BandoriBot/stamps/yukina_followmylead.png b/BandoriBot/stamps/yukina_followmylead.png new file mode 100644 index 0000000..13fc73b Binary files /dev/null and b/BandoriBot/stamps/yukina_followmylead.png differ diff --git a/BandoriBot/stamps/yukina_notbad.png b/BandoriBot/stamps/yukina_notbad.png new file mode 100644 index 0000000..7dc1ec1 Binary files /dev/null and b/BandoriBot/stamps/yukina_notbad.png differ