-
[c#] Matrix effekt
Hab eben was nettes per google gefunden:
Code:
#define readkey
using System;
namespace m7tr1x
{
class Program
{
static void Main(string[ ] args)
{
Console.Title = "tH3 M7tr1x 3ff3<t";
Console.ForegroundColor = ConsoleColor.DarkGreen;
Console.WindowLeft = Console.WindowTop = 0;
Console.WindowHeight = Console.BufferHeight = Console.LargestWindowHeight;
Console.WindowWidth = Console.BufferWidth = Console.LargestWindowWidth;
#if readkey
Console.WriteLine("H1T 7NY K3Y T0 C0NT1NU3 =/");
Console.ReadKey();
#endif
Console.CursorVisible = false;
int width, height;
int[ ] y;
int[ ] l;
Initialize(out width, out height, out y, out l);
int ms;
while ( true )
{
DateTime t1 = DateTime.Now;
MatrixStep(width, height, y, l);
ms = 10 - (int)( (TimeSpan)( DateTime.Now - t1 ) ).TotalMilliseconds;
if ( ms > 0 )
System.Threading.Thread.Sleep(ms);
if ( Console.KeyAvailable )
if ( Console.ReadKey().Key == ConsoleKey.F5 )
Initialize(out width, out height, out y, out l);
}
}
static bool thistime = false;
private static void MatrixStep(int width, int height, int[ ] y, int[ ] l)
{
int x;
thistime = !thistime;
for ( x = 0 ; x < width ; ++x )
{
if ( x % 11 == 10 )
{
if ( !thistime )
continue;
Console.ForegroundColor = ConsoleColor.White;
}
else
{
Console.ForegroundColor = ConsoleColor.DarkGreen;
Console.SetCursorPosition(x, inBoxY(y[x] - 2 - ( l[x] / 40 * 2 ), height));
Console.Write(R);
Console.ForegroundColor = ConsoleColor.Green;
}
Console.SetCursorPosition(x, y[x]);
Console.Write(R);
y[x] = inBoxY(y[x] + 1, height);
Console.SetCursorPosition(x, inBoxY(y[x] - l[x], height));
Console.Write(' ');
}
}
private static void Initialize(out int width, out int height, out int[ ] y, out int[ ] l)
{
int h1;
int h2 = ( h1 = ( height = Console.WindowHeight ) / 2 ) / 2;
width = Console.WindowWidth - 1;
y = new int[width];
l = new int[width];
int x;
Console.Clear();
for ( x = 0 ; x < width ; ++x )
{
y[x] = r.Next(height);
l[x] = r.Next(h2 * ( ( x % 11 != 10 ) ? 2 : 1 ), h1 * ( ( x % 11 != 10 ) ? 2 : 1 ));
}
}
static Random r = new Random();
static char R
{
get
{
int t = r.Next(10);
if ( t <= 2 )
return (char)( '0' + r.Next(10) );
else if ( t <= 4 )
return (char)( 'a' + r.Next(27) );
else if ( t <= 6 )
return (char)( 'A' + r.Next(27) );
else
return (char)( r.Next(32, 255) );
}
}
public static int inBoxY(int n, int height)
{
n = n % height;
if ( n < 0 )
return n + height;
else
return n;
}
}
}
Probierts aus, sieht echt n1 aus^^
-
-
-
Sehr nett ;) sieht auch noch richtig gut aus ... thx 4 share würde ich da ma sagen ^^ .. nur will keiner die 7kb große exe ohne icon annehmen xDD auch wenn ich sage es sieht gut aus ;)
naja thx schonmal
-
wie bekomme ich das hin? wo muss ich das eingeben?
-
Visual c# 2008 laden, Konsolenanwendung erstellen und alles mit meinem geposteten Code ersetzen! Kompilieren, feddig
EDIT:
oder den SharpDevelop , da gibts nicht so viel zu laden :)
-
LOL wenn ich es in devC++ reinpacke (jaa ich weiß is cpp und nicht C#) stürtzt devC++ beim Kompilieren ab..
Nagut.. VS2005 geöffnet - neues C# ConsolenProject... Code hinzugefügt... Kompiliert VB2005 kackt ab.. WTF??
WTF ist nich nur bei den Quellcode so... waaaas?.. ich muss XP neuinstallieren :D
-
ganz schön geil das teil :P
sieht wirklich cool aus :D
-
Hat das jemand für .NET? Hab auf dem Rechner keinen Converter.
-
joa für ne.net versi währ ich auch ^^