⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 a_lang.pl

📁 AndyChat 是一种用Perl 来编写的多协议的控制台聊天程序。它的目的在于提供一种共同的控制台界面
💻 PL
字号:
##!/usr/bin/perl## Schpati - Pre-Alpha of AndyChat v3.xx# MODULE: Language## Started on Saturday, 12th of February, 2000 around 3.00pm## 21st of July, 2002# -  (4.14am) Changed code to shutdown if there's a failure to read the language file#             instead of slowly eating all your available memory and swap.## 10th of January, 2001# -  (9.55pm) Wrote Translate, a replacement for Lang and GetWordfor## 6th of April, 2000# -  (1.09am) Minor changes for /me## 23rd of March, 2000# - (10.22pm) Cosmetic Change from ): to )## 12th of February, 2000# -  (3.00pm) Initial Development# -  (4.20pm) Complete?#sub GetWordfor {  my ($al_line) = @_;  if ($al_line eq 1)  {    # No Longer will AndyChat abort when no network is running as networking bits should be modularized and (sortof)    # loadable/unloadable during the chat even tho they are all indirectly running. (ie. proprietry (IPX), IRC, ICQ,     # AIM, MS Messenger, various Java chat modules inc. Yahoo! Chat, etc)    # return "AndyChat is designed for IPX networks.";  }  elsif ($al_line eq 2)  {    # See above    # return "Please install the relevant drivers and try again.";  }  elsif ($al_line eq 3)  {    # ?    # return "Check cables, drivers, and eat something..";  }  elsif ($al_line eq 4)  {    return "Now entering chat, please wait...";  }  elsif ($al_line eq 5)  {    return ACS_ULCORNER;  }  elsif ($al_line eq 6)  {    return ACS_HLINE;  }  elsif ($al_line eq 7)  {    return ACS_TTEE;  }  elsif ($al_line eq 8)  {    return ACS_URCORNER;  }  elsif ($al_line eq 9)  {    return ACS_VLINE;  }  elsif ($al_line eq 10)  {    return ACS_LTEE;  }  elsif ($al_line eq 11)  {    return ACS_PLUS;  }  elsif ($al_line eq 12)  {    return ACS_RTEE;  }  elsif ($al_line eq 13)  {    return ACS_LLCORNER;  }  elsif ($al_line eq 14)  {    return ACS_BTEE;  }  elsif ($al_line eq 15)  {    return ACS_LRCORNER;  }  elsif ($al_line eq 16)  {    return "`9(`4E`\@rror`9) `7";  }  elsif ($al_line eq 17)  {    return "That nickname is already in use!";  }  elsif ($al_line eq 18)  {    # Only for AndyChatIPX?    return "`4N`\@icknames are limited to `412 `\@characters`4.`7";  }  elsif ($al_line eq 19)  {    return "`4L`\@ogging is now `\$OFF`4!";  }  elsif ($al_line eq 20)  {    return "`4L`\@ogging is now `\$ON`4!";  }  elsif ($al_line eq 21)  {    return "Pizza Mode `\$ON`7!";  }  elsif ($al_line eq 22)  {    return "Pizza Mode `\$OFF`7!";  }  elsif ($al_line eq 23)  {    return " is already running the Pizza Server!";  }  elsif ($al_line eq 24)  {    return "`9(`7A`%ndy`7C`%hat`9) `7";  }  elsif ($al_line eq 25)  {    # AndyChatIPX, ICQ    return "You are no longer invisible.";  }  elsif ($al_line eq 26)  {    return "`8(AndyChat) You are now invisible!";  }  elsif ($al_line eq 27)  {    return "No games found - `\$";  }  elsif ($al_line eq 28)  {    return "You are not joined into that game.";  }  elsif ($al_line eq 29)  {    return "Ending your game - ";  }  elsif ($al_line eq 30)  {    return "You are not the host of that game!";  }  elsif ($al_line eq 31)  {    return "This feature has been removed.";  }  elsif ($al_line eq 32)  {    return "`4D`\@efault `4A`\@lias`4: `7";  }  elsif ($al_line eq 33)  {    return "`4D`\@uke `4P`\@ath`4    : `7";  }  elsif ($al_line eq 34)  {    return "`4D`\@oom II `4P`\@ath`4 : `7";  }  elsif ($al_line eq 35)  {    return "`4B`\@lood `4P`\@ath`4   : `7";  }  elsif ($al_line eq 36)  {    return "`7not found!";  }  elsif ($al_line eq 37)  {    return "` is an illegal character! :)";  }  elsif ($al_line eq 38)  {    return "No Duke Path has been set!  Please use /SET DUKEPATH <path>";  }  elsif ($al_line eq 39)  {    return " path is set, but files necessary do not exist";  }  elsif ($al_line eq 40)  {    return "No DOOM II path has been set!  Please use /SET DOOM2PATH <path>";  }  elsif ($al_line eq 41)  {    return "No BLOOD path has been set!  Please use /SET BLOODPATH <path>";  }  elsif ($al_line eq 42)  {    return "Invalid Game - `\$";  }  elsif ($al_line eq 43)  {    return "You are already hosting a game.";  }  elsif ($al_line eq 44)  {    return "Type `0/stopgame ";  }  elsif ($al_line eq 45)  {    return " `7to abort.";  }  elsif ($al_line eq 46)  {    return "A game has already been initiated on socket `\$";  }  elsif ($al_line eq 47)  {    return "A game has already been initiated with alias `\$";  }  elsif ($al_line eq 48)  {    return "`4I`\@nitiated `4G`\@ame `4\"`\$";  }  elsif ($al_line eq 49)  {    return "`4\"";  }  elsif ($al_line eq 50)  {    return "`4W`\@aiting for `\$";  }  elsif ($al_line eq 51)  {    return " `\@more players";  }  elsif ($al_line eq 52)  {    return "Too many games running.";  }  elsif ($al_line eq 53)  {    return "Game host has gone offline or route to host lost!";  }  elsif ($al_line eq 54)  {    return "That game is full, cannot join!";  }  elsif ($al_line eq 55)  {    return " `%has joined `\$";  }  elsif ($al_line eq 56)  {    return "Still waiting for ";  }  elsif ($al_line eq 57)  {    return "Start anyway? [Y/n]";  }  elsif ($al_line eq 58)  {    return "No";  }  elsif ($al_line eq 59)  {    return "Yes";  }  elsif ($al_line eq 60)  {    return " `5has started a game of `#";  }  elsif ($al_line eq 61)  {    return "`5Looking for `#";  }  elsif ($al_line eq 62)  {    return " `5players.";  }  elsif ($al_line eq 63)  {    return "`5Type `0/joingame ";  }  elsif ($al_line eq 64)  {    return " `5to join!";  }  elsif ($al_line eq 65)  {    return "Game `\$";  }  elsif ($al_line eq 66)  {    return " `7is no longer active.";  }  elsif ($al_line eq 67)  {    return "You have been removed from this game.";  }  elsif ($al_line eq 68)  {    return "I am out of sync -- updating...";  }  elsif ($al_line eq 69)  {    return "`9(`7A`%ndy`7C`%hat`9-`!CD`9) `4";  }  elsif ($al_line eq 70)  {    return "N`\@ow `4P`\@laying `4T`\@rack `4#`\@";  }  elsif ($al_line eq 71)  {    return "N`\@ow `4P`\@laying`4...";  }  elsif ($al_line eq 72)  {    return "N`\@ow `4P`\@laying `4A`\@udio `4CD";  }  elsif ($al_line eq 73)  {    return "A`\@udio `4P`\@aused`4...";  }  elsif ($al_line eq 74)  {    return "E`\@jected `4T`\@ray`4...";  }  elsif ($al_line eq 75)  {    return "T`\@ray `4L`\@ocked`4...";  }  elsif ($al_line eq 76)  {    return "N`\@o `4D`\@isc in `4D`\@rive";  }  elsif ($al_line eq 77)  {    return "A`\@udio `4P`\@aused or `4S`\@topped";  }  elsif ($al_line eq 78)  {    return "C`\@urrently `4B`\@usy or `4P`\@laying";  }  elsif ($al_line eq 79)  {    return "I`\@nactive";  }  elsif ($al_line eq 80)  {    return " `%just joined `7A`%ndy`7CHAT`9!";  }  elsif ($al_line eq 81)  {    return " `%just left `7A`%ndyt`7CHAT`9!";  }  elsif ($al_line eq 82)  {    return " `%renamed to ";  }  elsif ($al_line eq 83)  {    return " `%has left this chat room!";  }  elsif ($al_line eq 84)  {    return " `%has joined this chat room!";  }  elsif ($al_line eq 85)  {    return " `7has just started a `\@P`4i`\@z`4z`\@a `4S`\@e`4r`\@v`4e`\@r`4!";  }  elsif ($al_line eq 86)  {    return " `7has closed their `\@P`4i`\@z`4z`\@e`4r`\@i`4a`\@!";  }  elsif ($al_line eq 87)  {    return "`4SW P`\@ath      : `7";  }  elsif ($al_line eq 88)  {    return "No SW path has been set!  Please use /SET SWPATH <path>";  }  elsif ($al_line eq 89)  {    return "You can't change the topic for the Lobby.";  }  elsif ($al_line eq 90)  {    return "You do not own this room - topic unchanged.";  }  elsif ($al_line eq 91)  {    return "Room Topic changed to ";  }  elsif ($al_line eq 92)  {    return "That pizza is not on the menu!";  }  elsif ($al_line eq 93)  {    return "You have already ordered a pizza! /CANCEL to cancel order.";  }  elsif ($al_line eq 94)  {    return "You haven't ordered a pizza!";  }  elsif ($al_line eq 95)  {    return "Cancelled Pizza Order!";  }  elsif ($al_line eq 96)  {    return "`9(`7A`%ndy`7P`%izza`9) `7";  }  elsif ($al_line eq 97)  {    return "Ordered Pizza - ";  }  elsif ($al_line eq 98)  {    return "Pizza Server has not been initialised.";  }  elsif ($al_line eq 99)  {    return "You are not the Pizza Server!";  }  elsif ($al_line eq 100)  {    return "Too many pizzas are currently available!";  }  elsif ($al_line eq 101)  {    return "New Pizza Available!";  }  elsif ($al_line eq 102)  {    return "`7Pizza no longer available - `\@";  }  elsif ($al_line eq 103)  {    return "File Not Found - ";  }  elsif ($al_line eq 104)  {    return "will play file ";  }  elsif ($al_line eq 105)  {    return "has completed playing file.";  }  elsif ($al_line eq 106)  {    return "No pizzas currently for sale.";  }  elsif ($al_line eq 107)  {    return "";  }  elsif ($al_line eq 108)  {    return "";  }  elsif ($al_line eq 109)  {    return "";  }  return;}sub Lang {  my ($al_line) = @_;#  if ($nolang) { return GetWordfor($al_line); }#  if ($langline[$al_line + 1] ne "")#  {#    $langstr = $langline[$al_line + 1];#  }#  else#  {    return GetWordfor($al_line);#  }#  $langstr2 = $langstr; $langstr2u = 0;#  while (substr($langstr2, 0, 1) eq "_")#  {#    $langstr2 = substr($langstr2, 1);#    $langstr2u++;#  }#  $langstr2 = SPACEs($langstr2u) . $langstr2; $langstr2u = 0;#  while (substr($langstr2, -1, 1) eq "_")#  {#    $langstr2 = substr($langstr2, 0, -1);#    $langstr2u++;#  }#  $langstr = $langstr2 . SPACEs($langstr2u);  return $langstr;}sub Translate {  my ($al_trans, @al_bits) = @_;  my ($al_i, $trans, $searchfor);  if ($lang{$al_trans})  {    $trans = $lang{$al_trans};    for ($al_i = 0; $al_i < @al_bits; $al_i++)    {      $searchfor = "~" . ($al_i + 1);      $trans =~ s/$searchfor/$al_bits[$al_i]/;    }  }  else  {    print "Language file not found!  See README.\n";    ShutdownNow();    # Hmm.  }  return $trans;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -