rendered paste body;mIRC Physics Engine 1.03
;Made by BlueThen on March 24, 2008.
;To install, paste this code into your Remotes (Alt + R)
;then type /phys or right click a channel or status window and click "Physics Engine."
;BlueThen.com for more mIRC scripts and snippets!
menu channel,status {
Physics Engine: {
phys
}
}
alias phys {
window -poCzdk0 +tnbL @Phys1 -1 -1 400 400
window -poChzdk0 +tnbL @buffer -1 -1 800 800
%phys.e = n
phys.spawn
phys.loop
}
alias -l phys.loop {
if (%phys.h = 0) {
if ((%phys.y < 750) && (%phys.d == d)) {
inc %phys.y %phys.d.v
%phys.d.v = $calc(%phys.d.v * 1.2)
}
if ((%phys.y > 750) && (%phys.d == d)) {
%phys.d = u
%phys.d.v = $calc(%phys.d.v * 0.78)
}
if ((%phys.d = u) && (%phys.d.v > 2)) {
dec %phys.y %phys.d.v
%phys.d.v = $calc(%phys.d.v * 0.7)
}
if ((%phys.d = u) && (%phys.d.v < 2)) {
%phys.d = d
%phys.d.v = 2
}
if (%phys.y < 50) {
%phys.d = d
}
if (%phys.s.v > 0.05) && (%phys.s == r) {
dec %phys.x %phys.s.v
%phys.s.v = $calc(%phys.s.v * 0.95)
}
if (%phys.s.v > 0.05) && (%phys.s == l) {
inc %phys.x %phys.s.v
%phys.s.v = $calc(%phys.s.v * 0.95)
}
if (%phys.x > 750) {
%phys.s = r
}
if (%phys.x < 50) {
%phys.s = l
}
}
else {
%phys.y = $calc(2*$mouse.y)
%phys.x = $calc(2*$mouse.x)
}
if (%phys.e != y) {
drawdot @buffer 15 20 %phys.x %phys.y
drawtext @buffer 12 Tahoma 30 20 25 Made By BlueThen
drawtext @buffer 12 Tahoma 30 20 55 BlueThen.com
drawcopy -m @buffer 0 0 800 800 @phys1 0 0 400 400
clear @buffer
.timer -ho 1 0 phys.loop
}
}
alias -l phys.spawn {
%phys.h = 0
%phys.d = d
%phys.d.v = 1
%phys.x = 400
%phys.y = 400
drawdot @buffer 15 20 400 400
}
menu @phys1 {
sclick: {
%phys.h = 1
%phys.x = $calc(2*$mouse.x)
%phys.y = $calc(2*$mouse.y)
}
uclick: {
%phys.d.v = $calc(4*%phys.m.y.s)
%phys.d = %phys.m.y.d
%phys.h = 0
%phys.s.v = $calc(3*%phys.m.x.s)
%phys.s = %phys.m.x.d
}
leave: {
if (%phys.h == 1) {
%phys.h = 0
}
%phys.l = y
}
mouse: {
if (%phys.l = y) {
%phys.l = n
}
if ($mouse.y > %phys.m.y) {
%phys.m.y.d = d
}
else {
%phys.m.y.d = u
}
if ($mouse.x > %phys.m.x) {
%phys.m.x.d = l
}
else {
%phys.m.x.d = r
}
%phys.m.x.s = $abs($calc($mouse.x - %phys.m.x))
%phys.m.y.s = $abs($calc($mouse.y - %phys.m.y))
%phys.m.x = $mouse.x
%phys.m.y = $mouse.y
}
}
on *:close:@phys1: {
%phys.e = y
window -c @buffer
unset %phys.h %phys.d %phys.d.v %phys.x %phys.y %phys.m.y.d %phys.m.x.d %phys.m.x.s %phys.m.y.s %phys.m.x %phys.m.y %phys.s.v %phys.s %phys.l
}