Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

.savetime


Öne çıkan mesajlar

Mesaj tarihi:
nebuladaki gibi sphere forumlarında istek olarak yollanmış yazdım szinle paylaşmak istedim

[Defname savekontrol]
savekontrol 04000c116 // taşı koyun sonra .infodan uidini yazın

[Itemdef i_savekontrol]
Name = Save Kontrol
ID i_gravestone
Type t_eq_script

on=@create
color 0810
Timer = 60*60*1
tag.kacsavealindi 0

on=@click
if (> > 60)
message @0810 Kalan zaman : / 60> dk
message @0810 Alinan save miktari :
return 1
elseif (> < 60)
message @0810 Kalan zaman : > sn
message @0810 Alinan save miktari :
return 1
endif

on=@dclick
if ( < 0)
timer 60*60*1
message @0810 Hata giderildi!
return 1
endif

on=@timer
serv.save
staff
tag.kacsavealindi > +1
timer 60*60*1
return 1

[function staffsay]
if ( > 1)||()
VAR.GMS=+1>
TRYP 0 VAR.PLEVEL = >+1>
endif
UPDATE
return 1

[function staff]
VAR.GMS=0
VAR.PLEVEL2=0
VAR.PLEVEL3=0
VAR.PLEVEL4=0
VAR.PLEVEL5=0
VAR.PLEVEL6=0
VAR.PLEVEL7=0
serv.allclients staffsay

[function savetime]
if ( > 60)
src.sysmessage @035 Save alinmasina yaklasik / 60)> dk var
src.sysmessage @035 Server; / 3600)> saat / 60) - (( / 3600) * 60))> dakikadir calismakta.
src.sysmessage @035 Online Yetkili sayisi : >
return 1
elseif ( < 60)
src.sysmessage @035 Save alinmasina yaklasik > sn var.
src.sysmessage @035 Server; / 3600)> saat / 60) - (( / 3600) * 60))> dakikadir calismakta.
src.sysmessage @035 Online Yetkili Sayisi : >
return 1
endif[signature][hline]Legends never die !
Ahmet kaya
Mesaj tarihi:
tebrikler özercim çok güzel olmuş[signature][hline]Lucas

hele bir ışıklar sönsün hele bir kapansın kapılar sular durulsun bıçak atacağım daha on iki'den kısa devre yapsın kalbim ellerim inatla dökülsün cigaraya dağlar daim büyüsün sular köpürsün sen beni ozaman gör...

hele küssün meydanlar dehşetin oğlu ölsün ağır bir köpek karanlığı ve tüm mayınlar patlasın sen beni ozaman gör..
Mesaj tarihi:
bari şeyde ekleseydin süpper olurdu arada yell geçse isteğe bağlı olmadan save için xx dk kaldı mesela.
gerçekten güzel tebrikler.[signature][hline]Andolsunki onu yapan ve yaptıran için de Ahirette Cennetten bir nasip olmadığını biliyorlardı.
Legioner Young Nightblade

Mesaj tarihi:
yapıcaktım ama istemeyenler olur .savetime daha mantıklı oldu gereksiz lagdan kaçınalım :) tşkler..[signature][hline]Legends never die !
Ahmet kaya
Mesaj tarihi:
daha basit yontemi var :) hiç gerek yok bir event olarak kullaniyorum ben rc 4.0.2 de event olarak yapmak mumkun.Serveri yormaz en azından[signature][hline]
Mesaj tarihi:
kaç kere save alında .savetime gibi komutlarıda yaptım incelersen .P[signature][hline]Legends never die !
Ahmet kaya
Mesaj tarihi:
said:
Neronn, 17 Ocak 2005 00:07 tarihinde demiş ki:
scripting bölümünede eklerseniz güzel olur.

Çalışmayan bir yere neden eklensinki ;=)[signature][hline]Andolsunki onu yapan ve yaptıran için de Ahirette Cennetten bir nasip olmadığını biliyorlardı.
Legioner Young Nightblade

  • 2 hafta sonra ...
Mesaj tarihi:
Peki bu scripte olympusa benzer arada sirada kendiliginden playerlere soylemesi icin nasil bir satir eklemeliyim + save has been yazisinin cikmasini istemiyorum yardim ederseniz sevinirim
Mesaj tarihi:
said:
Mavi, 17 Ocak 2005 04:29 tarihinde demiş ki:
arkadaşlar bu .savetime olayının runuo ıcın scrıptını nerden bulabılırım ? yardım edebilecek varmı ?

scp'den hiç anlamam.



bir yerde bulabilecegini sanmıyorum arkadas yazmıs zaten anca runuo C# bilgisi olan bir arkadas ceviri yapabilir.[signature][hline]the Kovenant - S.E.T.İ
Mesaj tarihi:
said:
plus, 27 Ocak 2005 02:40 tarihinde demiş ki:
serveri kastırması için ne yapmak gerekiyorsa yapıyorsun


Peki kasmamasi ve arada sirada savelerin suresini otomatik olarak soylemesi icin ne yapabilirim?
Mesaj tarihi:
birileri şunu denesin bakalım çalışacak mı?
komut savetime, autosave.cs dosyası ile değiştirilecek.
(yedek almayı unutmayın)
[spo1=uyku sersemi yazdım, test edemedim.]
[code=php]using System;
using System.IO;
using Server;

namespace Server.Misc
{
public class AutoSave : Timer
{
private static TimeSpan m_Delay = TimeSpan.FromMinutes( 5.0 );
private static TimeSpan m_Warning = TimeSpan.Zero;
//private static TimeSpan m_Warning = TimeSpan.FromSeconds( 15.0 );
private static DateTime LastSave;

public static void Initialize()
{
new AutoSave().Start();
Commands.Register( "SetSaves", AccessLevel.Administrator, new CommandEventHandler( SetSaves_OnCommand ) );
Commands.Register( "SaveTime", AccessLevel.Player, new CommandEventHandler( SaveTime_OnCommand ) );
LastSave = DateTime.Now;
}

private static TimeSpan GetNextSave()
{
return (LastSave + m_Delay + m_Warning - DateTime.Now);
}

private static void SaveTime_OnCommand( CommandEventArgs e )
{
int i = GetNextSave().Seconds;

int min = i/60;
int sec = i%60;

string msg = "Bir sonraki save'e ";

if( min > 0 )
msg += min.ToString() + " dakika";

if( sec != 0 )
msg += sec.ToString() + " saniye";

e.Mobile.SendMessage( msg + " kaldı" );
}

private static bool m_SavesEnabled = true;

public static bool SavesEnabled
{
get{ return m_SavesEnabled; }
set{ m_SavesEnabled = value; }
}

[Usage( SetSaves )]
[Description( Enables or disables automatic shard saving. )]
public static void SetSaves_OnCommand( CommandEventArgs e )
{
if ( e.Length == 1 )
{
m_SavesEnabled = e.GetBoolean( 0 );
e.Mobile.SendMessage( "Saves have been {0}.", m_SavesEnabled ? "enabled" : "disabled" );
}
else
{
e.Mobile.SendMessage( "Format: SetSaves " );
}
}

public AutoSave() : base( m_Delay - m_Warning, m_Delay )
{
Priority = TimerPriority.OneMinute;
}

protected override void OnTick()
{
if ( !m_SavesEnabled || AutoRestart.Restarting )
return;

if ( m_Warning == TimeSpan.Zero )
{
Save();
}
else
{
int s = (int)m_Warning.TotalSeconds;
int m = s / 60;
s %= 60;

if ( m > 0 && s > 0 )
World.Broadcast( 0x35, true, "The world will save in {0} minute{1} and {2} second{3}.", m, m != 1 ? "s" : "", s, s != 1 ? "s" : "" );
else if ( m > 0 )
World.Broadcast( 0x35, true, "The world will save in {0} minute{1}.", m, m != 1 ? "s" : "" );
else
World.Broadcast( 0x35, true, "The world will save in {0} second{1}.", s, s != 1 ? "s" : "" );

Timer.DelayCall( m_Warning, new TimerCallback( Save ) );
}
}

public static void Save()
{
LastSave = DateTime.Now;
if ( AutoRestart.Restarting )
return;

try{ Backup(); }
catch{}

World.Save();
}

private static string[] m_Backups = new string[]
{
"Third Backup",
"Second Backup",
"Most Recent"
};

private static void Backup()
{
if ( m_Backups.Length == 0 )
return;

string root = Path.Combine( Core.BaseDirectory, "BackupsAutomatic" );

if ( !Directory.Exists( root ) )
Directory.CreateDirectory( root );

string[] existing = Directory.GetDirectories( root );

for ( int i = 0; i < m_Backups.Length; ++i )
{
DirectoryInfo dir = Match( existing, m_Backups[i] );

if ( dir == null )
continue;

if ( i > 0 )
{
string timeStamp = FindTimeStamp( dir.Name );

if ( timeStamp != null )
{
try{ dir.MoveTo( FormatDirectory( root, m_Backups[i - 1], timeStamp ) ); }
catch{}
}
}
else
{
try{ dir.Delete( true ); }
catch{}
}
}

string saves = Path.Combine( Core.BaseDirectory, "Saves" );

if ( Directory.Exists( saves ) )
Directory.Move( saves, FormatDirectory( root, m_Backups[m_Backups.Length - 1], GetTimeStamp() ) );
}

private static DirectoryInfo Match( string[] paths, string match )
{
for ( int i = 0; i < paths.Length; ++i )
{
DirectoryInfo info = new DirectoryInfo( paths[i] );

if ( info.Name.StartsWith( match ) )
return info;
}

return null;
}

private static string FormatDirectory( string root, string name, string timeStamp )
{
return Path.Combine( root, String.Format( "{0} ({1})", name, timeStamp ) );
}

private static string FindTimeStamp( string input )
{
int start = input.IndexOf( '(' );

if ( start >= 0 )
{
int end = input.IndexOf( ')', ++start );

if ( end >= start )
return input.Substring( start, end-start );
}

return null;
}

private static string GetTimeStamp()
{
DateTime now = DateTime.Now;

return String.Format( "{0}-{1}-{2} {3}-{4:D2}-{5:D2}",
now.Day,
now.Month,
now.Year,
now.Hour
Mesaj tarihi:
oy oy burada runuo öğrenen yokki hiç :([signature][hline]Andolsunki onu yapan ve yaptıran için de Ahirette Cennetten bir nasip olmadığını biliyorlardı.
Sonrada aynı güneş ısıtır senide benide kime ne?

Mesaj tarihi:
said:
Yeager, 17 Ocak 2005 18:36 tarihinde demiş ki:
Revizyon kullanıcıları, auto save i kapatmadan da, auto alınacak save ne kadar süre kaldığını gösterebilir.

ii güzel diosunda neden yazmamışsın nasıl yapıcaklarını _?[signature][hline]Legends never die !
Ahmet kaya
×
  • Yeni Oluştur...