Advertisement
Guest User

Untitled

a guest
Apr 22nd, 2015
210
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 21.43 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using System.Threading.Tasks;
  5. using System.Net.Sockets;
  6. using System.IO;
  7. using System.Collections;
  8. using System.Windows.Forms;
  9. using System.Linq;
  10. using System.Web;
  11. using System.Net;
  12. using System.Xml.Linq;
  13.  
  14. namespace twitchTVAPIModel
  15. {
  16. class IRC
  17. {
  18. public IRC()
  19. {
  20. ReadIRC("PxlFunBot", "oauth:crz9f3ersdxswnhcosopoyii5ttz5d", "PxlFunBot", "pxlfun_");
  21. }
  22. private void ReadIRC(string User, string Password, string Nick, string Chanel)
  23. {
  24.  
  25.  
  26.  
  27.  
  28. Random rnd = new Random();
  29. List<string> Usernamen = new List<string>();
  30. List<string> GW = new List<string>();
  31. List<string> permit = new List<string>();
  32. List<string> mods = new List<string>();
  33. List<string> Giveawayopen = new List<string>();
  34. List<string> Winners = new List<string>();
  35. List<string> Highlights = new List<string>();
  36.  
  37.  
  38.  
  39. //Strings
  40.  
  41.  
  42. String TeamspeakMessage = File.ReadAllText(@"C:\Twitch Bot\Messages\TeamspeakMessage.txt");
  43. String WebseiteMessage = File.ReadAllText(@"C:\Twitch Bot\Messages\WebseiteMessage.txt");
  44. String HighlightMessage = File.ReadAllText(@"C:\Twitch Bot\Messages\HighlightMessage.txt");
  45. String DonateMessage = File.ReadAllText(@"C:\Twitch Bot\Messages\DonateMessage.txt");
  46. String TradeMessage = File.ReadAllText(@"C:\Twitch Bot\Messages\TradeMessage.txt");
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55. TcpClient Client = new TcpClient("irc.twitch.tv", 6667);
  56. NetworkStream Stream = Client.GetStream();
  57.  
  58. StreamReader Reader = new StreamReader(Stream);
  59. StreamWriter Writer = new StreamWriter(Stream);
  60.  
  61. Writer.WriteLine("USER " + User);
  62. Writer.Flush();
  63. Writer.WriteLine("PASS " + Password);
  64. Writer.Flush();
  65. Writer.WriteLine("NICK " + Nick);
  66. Writer.Flush();
  67. Writer.WriteLine("JOIN #" + Chanel);
  68. Writer.Flush();
  69.  
  70.  
  71. File.WriteAllLines(@"C:\Stream\mitspieler.txt", Usernamen);
  72. File.WriteAllLines(@"C:\Stream\highlights.txt", Highlights);
  73.  
  74. File.ReadAllLines(@"C:\Stream\highlights.txt");
  75. while (true)
  76. {
  77. string Data = null;
  78. if (Stream.DataAvailable)
  79. {
  80.  
  81. Data = Reader.ReadLine();
  82.  
  83. if (Data != null)
  84. {
  85.  
  86. Console.WriteLine(Data);
  87. Writer.Flush();
  88. }
  89. try
  90. {
  91.  
  92.  
  93.  
  94. String UserMessage = Data.Split(new string[] { "PRIVMSG #" + Chanel.ToLower() + " :" }, StringSplitOptions.None)[1];
  95. String Username = Data.Split(':')[1].Split('!')[0];
  96.  
  97. if (UserMessage.Equals("!giveawaystart"))
  98. {
  99. if (Username.Equals("hoffihoffi") | Username.Equals(Chanel))
  100. {
  101. String GiveawayName = Data.Split(new string[] { "PRIVMSG #" + Chanel.ToLower() + " :!giveawaystart" }, StringSplitOptions.None)[1];
  102. Giveawayopen.Add("open");
  103. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + "Ein Giveaway wurde gesatrtet zum gewinnen gibt es eine/ein " + GiveawayName + ".");
  104. Writer.Flush();
  105. }
  106. }
  107.  
  108. if (UserMessage.Equals("!highlight"))
  109. {
  110. String path = @"C:\Program Files (x86)\JimsApps\Snaz\TextFiles\ChronoUp.txt";
  111.  
  112. string readText = File.ReadAllText(path);
  113. Highlights.Add(readText);
  114.  
  115. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " " + HighlightMessage);
  116. Writer.Flush();
  117.  
  118. string soundfile = @"C:\Stream\BOT\highlight.wav";
  119. byte[] bt = File.ReadAllBytes(soundfile);
  120. var sound = new System.Media.SoundPlayer(soundfile);
  121. sound.Play();
  122.  
  123.  
  124. File.WriteAllLines(@"C:\Stream\highlights.txt", Highlights);
  125.  
  126. }
  127. if (UserMessage.Equals("!hp") | UserMessage.Equals("!homepage") | UserMessage.Equals("!webseite"))
  128. {
  129. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " " + WebseiteMessage);
  130. Writer.Flush();
  131. }
  132.  
  133. if (UserMessage.Equals("!automessage"))
  134. {
  135. if (Username.Equals("hoffihoffi") | Username.Equals(Chanel))
  136. {
  137.  
  138. while (true)
  139. {
  140. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + "Du willst mit uns Traden ? dann !trade");
  141. Writer.Flush();
  142. System.Threading.Thread.Sleep(5*60000);
  143. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + "Teamspeak ? dann !ts");
  144. Writer.Flush();
  145. System.Threading.Thread.Sleep(5*60000);
  146. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + "Viewergames ? dann !join");
  147. Writer.Flush();
  148. System.Threading.Thread.Sleep(5*60000);
  149. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + "Informationen zum bot ? dann !bot");
  150. Writer.Flush();
  151. System.Threading.Thread.Sleep(5*60000);
  152. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + "Du willst wissen wie der aktuelle song heißt ? dann !track");
  153. Writer.Flush();
  154. }
  155.  
  156. }
  157.  
  158.  
  159. }
  160. if (UserMessage.Equals("!donate"))
  161. {
  162. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " " + DonateMessage);
  163. Writer.Flush();
  164. }
  165.  
  166. if (UserMessage.Equals("!trade"))
  167. {
  168. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " " + TradeMessage);
  169. Writer.Flush();
  170. }
  171.  
  172. if (UserMessage.Equals("!join") | UserMessage.Equals("!Join"))
  173. {
  174. if (Usernamen.Contains(Username))
  175. {
  176. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " du befindest dich berits auf der Liste");
  177. Writer.Flush();
  178.  
  179.  
  180. }
  181. else
  182. {
  183. Usernamen.Add(Username);
  184. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " du bist der Liste auf Platz " + Usernamen.Count + " beigetreten.");
  185. Writer.Flush();
  186. File.WriteAllLines(@"C:\Stream\mitspieler.txt", Usernamen);
  187. }
  188. }
  189.  
  190.  
  191. if (UserMessage.Equals("!unjoin") | UserMessage.Equals("!Unjoin"))
  192. {
  193. if (!Usernamen.Contains(Username))
  194. {
  195. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " du befindest dich nicht auf der Liste");
  196. Writer.Flush();
  197.  
  198.  
  199. }
  200. else
  201. {
  202. Usernamen.Remove(Username);
  203. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " du wurdest von der Liste gelöscht.");
  204. Writer.Flush();
  205. File.WriteAllLines(@"C:\Stream\mitspieler.txt", Usernamen);
  206.  
  207. }
  208.  
  209. }
  210.  
  211. if (UserMessage.Equals("!list") | UserMessage.Equals("!List"))
  212. {
  213. if (!Usernamen.Contains(Username))
  214. {
  215. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " du befindest dich nicht auf der Liste.");
  216. Writer.Flush();
  217.  
  218.  
  219. }
  220. else
  221. {
  222. int posmax = Usernamen.Count();
  223.  
  224. int pos = Usernamen.IndexOf(Username) + 1;
  225.  
  226. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " du bist auf Platz " + pos + " von " + posmax + " auf der Liste.");
  227. Writer.Flush();
  228. File.WriteAllLines(@"C:\Stream\mitspieler.txt", Usernamen);
  229.  
  230. }
  231.  
  232.  
  233. }
  234. if (UserMessage.Equals("!ts") | UserMessage.Equals("!Ts") | UserMessage.Equals("!TS") | UserMessage.Equals("!Teamspeak") | UserMessage.Equals("!teamspeak"))
  235. {
  236. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + "Unsere Teamspeak IP: ts.pxlfun.eu");
  237. Writer.Flush();
  238. }
  239. if (UserMessage.Equals("!clear"))
  240. {
  241. if (Username.Equals("hoffihoffi") | Username.Equals(Chanel))
  242. {
  243. Usernamen.Clear();
  244. File.WriteAllLines(@"C:\Stream\mitspieler.txt", Usernamen);
  245. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + "Liste gecleart");
  246. Writer.Flush();
  247. }
  248. else
  249. {
  250. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " du hast keine Rechte um die Liste zu clearen.");
  251. Writer.Flush();
  252. }
  253.  
  254. }
  255. if (UserMessage.Equals("!gameclear"))
  256. {
  257. if (Username.Equals(Chanel) | Username.Equals("hoffihoffi"))
  258. {
  259. Usernamen.RemoveAt(1);
  260. }
  261. else
  262. {
  263. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " Du hast keine Rechte um die liste zu clearen.");
  264. Writer.Flush();
  265. }
  266.  
  267.  
  268. }
  269.  
  270.  
  271.  
  272.  
  273. if (UserMessage.Equals("!track"))
  274. {
  275. using (StreamReader sr = new StreamReader(@"C:\Stream\nowPlaying.txt"))
  276. {
  277. String line = sr.ReadToEnd();
  278. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + line);
  279. Writer.Flush();
  280. }
  281. }
  282.  
  283. if (UserMessage.Equals("!bot"))
  284. {
  285. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " Informationen zum bot: http://goo.gl/ieE45D");
  286. Writer.Flush();
  287. }
  288. if (UserMessage.Equals("!commands") | UserMessage.Equals("!cmd"))
  289. {
  290. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " Die Commands: !ts !join !unjoin !list !track !bot !buyticket");
  291. Writer.Flush();
  292. }
  293. if (UserMessage.Equals("!viewerlove"))
  294. {
  295. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + "<3 <3 ViewerLove <3 <3");
  296. Writer.Flush();
  297. }
  298. if (UserMessage.Equals("!pxlfunlove"))
  299. {
  300. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + "<3 <3 PxlFunLove <3 <3 #NoHomo");
  301. Writer.Flush();
  302. }
  303.  
  304. // ANTi Werbung - Spam
  305. if (UserMessage.Contains(".de") | UserMessage.Contains(".eu") | UserMessage.Contains(".at") | UserMessage.Contains(".com") | UserMessage.Contains(".net") | UserMessage.Contains(".tv"))
  306. {
  307. if (UserMessage.StartsWith("!songrequest"))
  308. {
  309.  
  310. }
  311. else
  312. {
  313. if (Username.Equals("hoffihoffi") | Username.Equals(Chanel) | permit.Contains(Username) | Username.Equals("pxlfunbot"))
  314. {
  315.  
  316. }
  317. else
  318. {
  319. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + "/timeout " + Username + " 1");
  320. Writer.Flush();
  321. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " was fällt dir ein Werbung/Spam zu machen frag um einen !permit.");
  322. Writer.Flush();
  323. }
  324. }
  325.  
  326. }
  327.  
  328. //Giveaway -- System
  329.  
  330.  
  331. if (UserMessage.Equals("!buyticket"))
  332. {
  333.  
  334. if (Giveawayopen.Contains("yes"))
  335. {
  336. if (GW.Contains(Username))
  337. {
  338. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " du hast bereits ticket gekauft.");
  339. Writer.Flush();
  340. }
  341. else
  342. {
  343. GW.Add(Username);
  344.  
  345. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " du hast ein ticket gekauft.");
  346. Writer.Flush();
  347. }
  348. }
  349. else
  350. {
  351. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " es ist kein giveaway offen");
  352. Writer.Flush();
  353. }
  354.  
  355.  
  356.  
  357. }
  358. if (UserMessage.Equals("!giveawayopen"))
  359. {
  360. if (Username.Equals(Chanel) | Username.Equals("hoffihoffi"))
  361. {
  362. Giveawayopen.Clear();
  363. Giveawayopen.Add("yes");
  364. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + "Es wurde ein Giveaway geöffnet.");
  365. Writer.Flush();
  366. }
  367. }
  368. if (UserMessage.Equals("!giveawayclose"))
  369. {
  370. if (Username.Equals(Chanel) | Username.Equals("hoffihoffi"))
  371. {
  372. Giveawayopen.Clear();
  373. Giveawayopen.Add("no");
  374. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + "Es wurde das giveaway gescholossen.");
  375. Writer.Flush();
  376. }
  377. }
  378.  
  379.  
  380. if (UserMessage.Equals("!roll"))
  381. {
  382. if (Username.Equals("hoffihoffi") | Username.Equals(Chanel))
  383. {
  384. Random r = new Random();
  385. int index = r.Next(0, GW.Count);
  386. String Winner = GW[index];
  387.  
  388. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + "Gewonnen hat: " + Winner + ". Es haben " + GW.Count + " mitgemacht.");
  389. Writer.Flush();
  390.  
  391. Winners.Add(Winner);
  392.  
  393. GW.Clear();
  394.  
  395.  
  396.  
  397. }
  398. }
  399.  
  400. if (UserMessage.Equals("!redeem"))
  401. {
  402. if(Winners.Contains(Username))
  403. {
  404.  
  405. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + ", hat das Giveaway entgegen genomman.");
  406. Writer.Flush();
  407.  
  408. Winners.Clear();
  409.  
  410. }
  411. }
  412.  
  413.  
  414.  
  415. if (UserMessage.Equals("!inlist"))
  416. {
  417. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + GW.Count);
  418. Writer.Flush();
  419. }
  420.  
  421. //Permit etc.
  422. String permitUser = Data.Split(new string[] { "PRIVMSG #" + Chanel.ToLower() + " :!permit" }, StringSplitOptions.None)[1];
  423. if (UserMessage.Contains("!permit"))
  424. {
  425. if (Username.Equals("hoffihoffi") | Username.Equals(Chanel))
  426. {
  427.  
  428. permit.Add(permitUser);
  429. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + permitUser + ", Poste deinen Link du hast 1 minute zeit.");
  430. Writer.Flush();
  431. System.Threading.Thread.Sleep(57000);
  432. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + permitUser + " dein permit endet in 3 Sekunden.");
  433. Writer.Flush();
  434. System.Threading.Thread.Sleep(1000);
  435. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + permitUser + " dein permit endet in 2 Sekunden.");
  436. Writer.Flush();
  437. System.Threading.Thread.Sleep(1000);
  438. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + permitUser + " dein permit endet in 1 Sekunden.");
  439. Writer.Flush();
  440. System.Threading.Thread.Sleep(1000);
  441. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + permitUser + " dein permit wurde entfernt");
  442. Writer.Flush();
  443. permit.Remove(permitUser);
  444. }
  445. else
  446. {
  447. if (permit.Contains(permitUser))
  448. {
  449. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " du hast einen permit poste deinen Link.");
  450. Writer.Flush();
  451. }
  452. else
  453. {
  454. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " du hast keinen permit ");
  455. Writer.Flush();
  456. }
  457. }
  458. }
  459. // Token System
  460. if (UserMessage.Equals("!tokens"))
  461. {
  462. Writer.WriteLine("PRIVMSG #" + Chanel + " :" + Username + " das Tokensystem ist gerade in arbeit.");
  463. Writer.Flush();
  464. }
  465.  
  466.  
  467.  
  468. }
  469. catch
  470. {
  471. }
  472.  
  473.  
  474.  
  475.  
  476. }
  477. }
  478.  
  479. }
  480.  
  481.  
  482. }
  483. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement