Advertisement
Guest User

Untitled

a guest
Mar 20th, 2019
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.67 KB | None | 0 0
  1. import java.util.Scanner;
  2.  
  3. class Fratzenbook{
  4.  
  5. Knoten[]nutzer;
  6. int[][]befreundet;
  7. int anzahl;
  8. String password;
  9. String username;
  10.  
  11.  
  12. Fratzenbook(){
  13.  
  14. nutzer = new Knoten [100];
  15. befreundet = new int [100][100];
  16.  
  17. anzahl = 10;
  18. nutzer[0]= new Knoten("Moritz","lul","Random: Hi");
  19. nutzer[1]= new Knoten("Kabbo","hehe","Servus");
  20. nutzer[2]= new Knoten("Paddy","kenningwestalder","Seeees");
  21. nutzer[3]= new Knoten("Max","mmue","Guten Tag");
  22. nutzer[4]= new Knoten("Maddin","eins","Moin");
  23. nutzer[5]= new Knoten("theRat","zwei","/");
  24. nutzer[6]= new Knoten("Bems","drei","lol");
  25. nutzer[7]= new Knoten("Mono","vier","I bims eins Depp");
  26. nutzer[8]= new Knoten("Stift","fuenf","nop");
  27. nutzer[9]= new Knoten("Puki","sechs","huiuiui");
  28. befreunden(0,1);
  29. befreunden(1,4);
  30. fabefreunden(0,8);
  31. fabefreunden(0,3);
  32. fabefreunden(1,5);
  33. login();
  34. }
  35.  
  36. //Um Beispielhaft von Anfang an zu befreunden
  37. void befreunden(int n1, int n2)
  38. {
  39. befreundet[n1][n2]= 3;
  40. befreundet[n2][n1]= 3;
  41. }
  42.  
  43. //Freundschaftsanfragen für Bsp Daten
  44. void fabefreunden(int n1, int n2)
  45. {
  46. befreundet[n1][n2]= 2;
  47. befreundet[n2][n1]= 2;
  48. }
  49.  
  50. //man kommt zur ersten Benutzeroberfläche
  51. void login()
  52. {
  53. clearScreen();
  54. System.out.println("Hey! Herzlich Willkommen zum BESTEN Social Network dieser Schule!!");
  55. Scanner s = new Scanner(System.in);
  56. System.out.println("1) Um dich einzuloggen");
  57. System.out.println("2) Hier kannst du ein Konto erstellen");
  58. System.out.print("Eingabe: ");
  59. switch(s.nextInt()) {
  60. case 1:
  61. einloggen();
  62. break;
  63. case 2:
  64. Kontoerstellen();
  65. break;
  66.  
  67. default:
  68. System.err.println("Falsche Eingabe");
  69. login();
  70. break;
  71. }
  72. }
  73.  
  74. //Methode zum Anmelden mit einem bestehenden account
  75. void einloggen()
  76. {
  77. String hiuh;
  78. Scanner input = new Scanner(System.in);
  79. System.out.println("Log in:");
  80. System.out.println("username: ");
  81. username = input.next();
  82.  
  83. int gd = 0;
  84. int p = 0;
  85. while(p<anzahl)
  86. {
  87. hiuh = nutzer[p].name;
  88. if (hiuh.equals(username))
  89. {
  90. password = nutzer[p].passwort;
  91. gd = 1;
  92. }
  93. p++;
  94. }
  95. if(gd==1)
  96. {
  97. String Paswo;
  98. System.out.println("password: ");
  99. Paswo = input.next();
  100. if (Paswo.equals(password))
  101. {
  102. clearScreen();
  103. System.out.println("Du hast dich erfolgreich eingeloggt");
  104. profil();
  105. }
  106. else
  107. {
  108. System.out.println("Falsches Passwort");
  109. einloggen();
  110. }
  111. }
  112. else
  113. {
  114. System.out.println("Falsches Passwort oder Nutzername");
  115. einloggen();
  116. }
  117. }
  118.  
  119. //Abfragen, ob es den Nutzername gibt
  120. boolean gibtsden(String name)
  121. {
  122. int k=0;
  123. while(k<anzahl)
  124. {
  125. if(nutzer[k].name ==name)
  126. {
  127. return true;
  128. }
  129. else
  130. {
  131. k++;
  132. }
  133. }
  134. return false;
  135. }
  136.  
  137.  
  138. //prüft ob die Personen befreundet sind
  139. public int befreundet()
  140. {
  141. int anzahlf;
  142. int k=0;
  143. anzahlf=0;
  144. while(username.equals(nutzer[k].name)==false && k<anzahl)
  145. {
  146. k ++;
  147. }
  148. int n=0;
  149. while(n<anzahl)
  150. if (befreundet[k][n] == 3){
  151. anzahlf ++;
  152. n++;
  153. }
  154. else {
  155. n++;
  156. }
  157. return anzahlf;
  158. }
  159.  
  160. //ein Konto wird erstellt
  161. void Kontoerstellen()
  162. {
  163. Scanner in = new Scanner(System.in);
  164. String uusername;
  165. String upassword;
  166.  
  167. System.out.println("username: ");
  168. uusername = in.next();
  169.  
  170. if(gibtsden(uusername)==true)
  171. {
  172. clearScreen();
  173. System.out.println("Nutzername bereits vergeben");
  174. Kontoerstellen();
  175. }
  176.  
  177. System.out.println("password: ");
  178. upassword = in.next();
  179.  
  180. KundeEinfügen(uusername,upassword);
  181. login();
  182. }
  183. public void KundeEinfügen(String nutzername, String Passwort)
  184. {
  185. nutzer[anzahl]=new Knoten(nutzername,Passwort,"");
  186. anzahl ++;
  187. }
  188.  
  189. //gibt die Anzahl offener Freundschaftsanfragen
  190. int anzahloffen()
  191. {
  192. int anzahlf;
  193. int k=0;
  194. anzahlf=0;
  195. while(username.equals(nutzer[k].name)==false && k<anzahl)
  196. {
  197. k ++;
  198. }
  199. System.out.println("Sie heißen");
  200. int n=0;
  201. while(n<anzahl)
  202. if (befreundet[k][n] == 2){
  203. System.out.println(ConsoleColors.CYAN + nutzer[n].name + ConsoleColors.RESET);
  204. n++;
  205. anzahlf ++;
  206. }
  207. else {
  208. n++;
  209. }
  210. return anzahlf;
  211. }
  212.  
  213. //zeigt das Profil eines Nutzers an
  214. void profil()
  215. {
  216. int k = 0;
  217. while(username.equals(nutzer[k].name)==false && k<anzahl)
  218. {
  219. k ++;
  220. }
  221. befreundet();
  222. System.out.println("Du hast "+befreundet()+" Freunde");
  223. System.out.println("Und "+anzahloffen()+ " offenen Freundschaftsanfragen");
  224. System.out.println("Nachrichten: "+nutzer[k].nachricht);
  225. System.out.println("Wollen sie eine Nachricht Senden? Dann geben sie 1 ein.");
  226. System.out.println("Mit 2) kannst du eine Freundschaftsanfrage schicken oder eine ablehen oder annehmen.");
  227. System.out.println("Mit 3) kannst du dich ausloggen.");
  228. Scanner in = new Scanner(System.in);
  229. switch(in.nextInt())
  230. {
  231. case 1:
  232. {
  233. System.out.println("1) Nachricht an eine bestimmte Person schicken \n 2) Nachricht an alle Freunde schicken.");
  234. switch(in.nextInt())
  235. {
  236. case 1:
  237. System.out.println("Name des Freundes eigeben");
  238. String name;
  239. name = in.next();
  240. System.out.println("Nachricht eingeben");
  241. String nachricht;
  242. nachricht = in.next();
  243. nachrichtsenden(name,nachricht);
  244. break;
  245. case 2:
  246. System.out.println("Nachricht eigeben:");
  247. String na;
  248. na = in.next();
  249. NachrichtanAlle(na);
  250. break;
  251. }
  252. }
  253. case 2:
  254. {
  255. switch(in.nextInt())
  256. {
  257. case 1:
  258. {
  259. int g = 0;
  260. while(username.equals(nutzer[g].name)==false && g<anzahl)
  261. {
  262. g ++;
  263. }
  264. String nname;
  265. nname= in.next();
  266. int ks;
  267. ks = nummerzuname(nname);
  268. befreundet[ks][k]= 2;
  269. befreundet[k][ks]= 2;
  270. break;
  271.  
  272. }
  273. case 2:
  274. {
  275. Fannehmen();
  276. break;
  277. }
  278. case 3:
  279. {
  280. Fablehenen();
  281. break;
  282. }
  283. }
  284. }
  285. case 3:
  286. {
  287. System.out.println(".");
  288. login();
  289. }
  290. }
  291. }
  292. //nimmt die Freundschaftsanfrage an
  293. void Fannehmen()
  294. {
  295. int k = 0;
  296. while(username.equals(nutzer[k].name)==false && k<anzahl)
  297. {
  298. k ++;
  299. }
  300. String lname;
  301. Scanner in = new Scanner(System.in);
  302. System.out.println("Name eingeben...");
  303. lname = in.next();
  304. befreundet[k][nummerzuname(lname)] = 3;
  305. befreundet[nummerzuname(lname)][k] = 3;
  306.  
  307. }
  308.  
  309. //lehnt die Freundschaftsanfrage ab
  310. void Fablehenen()
  311. {
  312. int k = 0;
  313. while(username.equals(nutzer[k].name)==false && k<anzahl)
  314. {
  315. k ++;
  316. }
  317. String lname;
  318. Scanner in = new Scanner(System.in);
  319. System.out.println("Name eingeben...");
  320. lname = in.next();
  321. befreundet[k][nummerzuname(lname)] = 1;
  322. befreundet[nummerzuname(lname)][k] = 1;
  323. }
  324.  
  325. public int nummerzuname(String name){
  326. for (int i=0; i<anzahl; i++){
  327. if (name.equals(nutzer[i].name))
  328. { return i;
  329. }
  330. }
  331. return -1;
  332. }
  333.  
  334. //sendet eine Nachricht an alle Freund
  335. void nachrichtsenden(String typ,String nachricht)
  336. {
  337. int k = 0;
  338. while(username.equals(nutzer[k].name)==false && k<anzahl)
  339. {
  340. k ++;
  341. }
  342. if(befreundet[k][nummerzuname(typ)]==3)
  343. {
  344. String old;
  345. old = nutzer[nummerzuname(typ)].nachricht;
  346. nutzer[nummerzuname(typ)].nachricht = old+"\n"+ConsoleColors.RED+nutzer[k].name+": "+ConsoleColors.RESET+nachricht;
  347. }
  348. else
  349. {
  350. System.out.println("Du bist wohl nicht mit "+typ+" befreundet");
  351. }
  352. profil();
  353. }
  354.  
  355. void NachrichtanAlle(String nachricht){
  356. int k = 0;
  357. while(username.equals(nutzer[k].name)==false && k<anzahl)
  358. {
  359. k ++;
  360. }
  361. int p=0;
  362. while(p<anzahl){
  363. if(befreundet[k][p]==3){
  364. String old;
  365. old = nutzer[p].nachricht;
  366. nutzer[p].nachricht = old+"\n"+nutzer[k].name+": "+nachricht;
  367. }
  368. else
  369. {
  370. p++;
  371. }
  372. }
  373. profil();
  374. }
  375.  
  376.  
  377.  
  378. public static void clearScreen() {
  379. System.out.print("\033[H\033[2J");
  380. System.out.flush();
  381. }
  382. public class ConsoleColors {
  383. // Reset
  384. public static final String RESET = "\033[0m"; // Text Reset
  385.  
  386. // Regular Colors
  387. public static final String BLACK = "\033[0;30m"; // BLACK
  388. public static final String RED = "\033[0;31m"; // RED
  389. public static final String GREEN = "\033[0;32m"; // GREEN
  390. public static final String YELLOW = "\033[0;33m"; // YELLOW
  391. public static final String BLUE = "\033[0;34m"; // BLUE
  392. public static final String PURPLE = "\033[0;35m"; // PURPLE
  393. public static final String CYAN = "\033[0;36m"; // CYAN
  394. public static final String WHITE = "\033[0;37m"; // WHITE
  395.  
  396. // Bold
  397. public static final String BLACK_BOLD = "\033[1;30m"; // BLACK
  398. public static final String RED_BOLD = "\033[1;31m"; // RED
  399. public static final String GREEN_BOLD = "\033[1;32m"; // GREEN
  400. public static final String YELLOW_BOLD = "\033[1;33m"; // YELLOW
  401. public static final String BLUE_BOLD = "\033[1;34m"; // BLUE
  402. public static final String PURPLE_BOLD = "\033[1;35m"; // PURPLE
  403. public static final String CYAN_BOLD = "\033[1;36m"; // CYAN
  404. public static final String WHITE_BOLD = "\033[1;37m"; // WHITE
  405.  
  406. // Underline
  407. public static final String BLACK_UNDERLINED = "\033[4;30m"; // BLACK
  408. public static final String RED_UNDERLINED = "\033[4;31m"; // RED
  409. public static final String GREEN_UNDERLINED = "\033[4;32m"; // GREEN
  410. public static final String YELLOW_UNDERLINED = "\033[4;33m"; // YELLOW
  411. public static final String BLUE_UNDERLINED = "\033[4;34m"; // BLUE
  412. public static final String PURPLE_UNDERLINED = "\033[4;35m"; // PURPLE
  413. public static final String CYAN_UNDERLINED = "\033[4;36m"; // CYAN
  414. public static final String WHITE_UNDERLINED = "\033[4;37m"; // WHITE
  415.  
  416. // Background
  417. public static final String BLACK_BACKGROUND = "\033[40m"; // BLACK
  418. public static final String RED_BACKGROUND = "\033[41m"; // RED
  419. public static final String GREEN_BACKGROUND = "\033[42m"; // GREEN
  420. public static final String YELLOW_BACKGROUND = "\033[43m"; // YELLOW
  421. public static final String BLUE_BACKGROUND = "\033[44m"; // BLUE
  422. public static final String PURPLE_BACKGROUND = "\033[45m"; // PURPLE
  423. public static final String CYAN_BACKGROUND = "\033[46m"; // CYAN
  424. public static final String WHITE_BACKGROUND = "\033[47m"; // WHITE
  425.  
  426. // High Intensity
  427. public static final String BLACK_BRIGHT = "\033[0;90m"; // BLACK
  428. public static final String RED_BRIGHT = "\033[0;91m"; // RED
  429. public static final String GREEN_BRIGHT = "\033[0;92m"; // GREEN
  430. public static final String YELLOW_BRIGHT = "\033[0;93m"; // YELLOW
  431. public static final String BLUE_BRIGHT = "\033[0;94m"; // BLUE
  432. public static final String PURPLE_BRIGHT = "\033[0;95m"; // PURPLE
  433. public static final String CYAN_BRIGHT = "\033[0;96m"; // CYAN
  434. public static final String WHITE_BRIGHT = "\033[0;97m"; // WHITE
  435.  
  436. // Bold High Intensity
  437. public static final String BLACK_BOLD_BRIGHT = "\033[1;90m"; // BLACK
  438. public static final String RED_BOLD_BRIGHT = "\033[1;91m"; // RED
  439. public static final String GREEN_BOLD_BRIGHT = "\033[1;92m"; // GREEN
  440. public static final String YELLOW_BOLD_BRIGHT = "\033[1;93m";// YELLOW
  441. public static final String BLUE_BOLD_BRIGHT = "\033[1;94m"; // BLUE
  442. public static final String PURPLE_BOLD_BRIGHT = "\033[1;95m";// PURPLE
  443. public static final String CYAN_BOLD_BRIGHT = "\033[1;96m"; // CYAN
  444. public static final String WHITE_BOLD_BRIGHT = "\033[1;97m"; // WHITE
  445.  
  446. // High Intensity backgrounds
  447. public static final String BLACK_BACKGROUND_BRIGHT = "\033[0;100m";// BLACK
  448. public static final String RED_BACKGROUND_BRIGHT = "\033[0;101m";// RED
  449. public static final String GREEN_BACKGROUND_BRIGHT = "\033[0;102m";// GREEN
  450. public static final String YELLOW_BACKGROUND_BRIGHT = "\033[0;103m";// YELLOW
  451. public static final String BLUE_BACKGROUND_BRIGHT = "\033[0;104m";// BLUE
  452. public static final String PURPLE_BACKGROUND_BRIGHT = "\033[0;105m"; // PURPLE
  453. public static final String CYAN_BACKGROUND_BRIGHT = "\033[0;106m"; // CYAN
  454. public static final String WHITE_BACKGROUND_BRIGHT = "\033[0;107m"; // WHITE
  455. }
  456. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement