<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title><![CDATA[Forums - Scripts]]></title>
		<link>https://jahugapy.freeddns.org/</link>
		<description><![CDATA[Forums - https://jahugapy.freeddns.org]]></description>
		<pubDate>Sun, 17 May 2026 11:27:17 +0000</pubDate>
		<generator>MyBB</generator>
		<item>
			<title><![CDATA[Welcome Geo Script]]></title>
			<link>https://jahugapy.freeddns.org/showthread.php?tid=4</link>
			<pubDate>Wed, 19 Nov 2025 01:18:01 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://jahugapy.freeddns.org/member.php?action=profile&uid=1">JEENNN</a>]]></dc:creator>
			<guid isPermaLink="false">https://jahugapy.freeddns.org/showthread.php?tid=4</guid>
			<description><![CDATA[This file welcomes the player and roughly indicates their location according to their internet provider. It requires one more file for this to work: <span style="font-weight: bold;" class="mycode_b">Geoip.dat</span>. This file needs to be in the game's root directory. You can modify the script to your liking and use it in both mods and hardcore games.<br />
<br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>init()<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;level endon("disconnect");<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;level.welcomegeo = false;<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;for(;;)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;level waittill("connected",player);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if( !isdefined( player.pers["player_welcomed"] ) )<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if( !isdefined( player.pers["isbot"] ) )<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;player.pers["player_welcomed"] = true;  // player welcomed<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;player thread geo();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}<br />
<br />
geo()<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;level endon("disconnect");<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;location = self getgeolocation (2);<br />
&nbsp;&nbsp;&nbsp;&nbsp;level welcomegeo("^5Welcome^7 " + self.name  + " ^5From " + location);<br />
}<br />
<br />
welcomegeo(text)<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;level endon("disconnect");<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;while(level.welcomegeo) <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wait .05;<br />
&nbsp;&nbsp;&nbsp;&nbsp;level.welcomegeo = true;<br />
&nbsp;&nbsp;&nbsp;&nbsp;msg = addTextHud( level, 750, 5, 1, "left", "middle", undefined, undefined, 1.4, 888 );<br />
&nbsp;&nbsp;&nbsp;&nbsp;msg SetText(text);<br />
&nbsp;&nbsp;&nbsp;&nbsp;msg MoveHud(30,-1300);<br />
&nbsp;&nbsp;&nbsp;&nbsp;wait 15;<br />
&nbsp;&nbsp;&nbsp;&nbsp;msg destroy();<br />
&nbsp;&nbsp;&nbsp;&nbsp;level.welcomegeo = false;<br />
}<br />
<br />
MoveHud(time,x,y)<br />
{<br />
    self moveOverTime(time);<br />
    if(isDefined(x))<br />
        self.x = x;<br />
       <br />
    if(isDefined(y))<br />
        self.y = y;<br />
}<br />
<br />
addTextHud( who, x, y, alpha, alignX, alignY, horiz, vert, fontScale, sort )<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;if( isPlayer( who ) )<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hud = newClientHudElem( who );<br />
&nbsp;&nbsp;&nbsp;&nbsp;else<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hud = newHudElem();<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;hud.x = x;<br />
&nbsp;&nbsp;&nbsp;&nbsp;hud.y = y;<br />
&nbsp;&nbsp;&nbsp;&nbsp;hud.alpha = alpha;<br />
&nbsp;&nbsp;&nbsp;&nbsp;hud.sort = sort;<br />
&nbsp;&nbsp;&nbsp;&nbsp;hud.alignX = alignX;<br />
&nbsp;&nbsp;&nbsp;&nbsp;hud.alignY = alignY;<br />
&nbsp;&nbsp;&nbsp;&nbsp;if(isdefined(vert))<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hud.vertAlign = vert;<br />
&nbsp;&nbsp;&nbsp;&nbsp;if(isdefined(horiz))<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hud.horzAlign = horiz;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;if(fontScale != 0)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hud.fontScale = fontScale;<br />
&nbsp;&nbsp;&nbsp;&nbsp;hud.foreground = 1;<br />
&nbsp;&nbsp;&nbsp;&nbsp;hud.archived = 0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;return hud;<br />
}</code></div></div>]]></description>
			<content:encoded><![CDATA[This file welcomes the player and roughly indicates their location according to their internet provider. It requires one more file for this to work: <span style="font-weight: bold;" class="mycode_b">Geoip.dat</span>. This file needs to be in the game's root directory. You can modify the script to your liking and use it in both mods and hardcore games.<br />
<br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>init()<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;level endon("disconnect");<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;level.welcomegeo = false;<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;for(;;)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;level waittill("connected",player);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if( !isdefined( player.pers["player_welcomed"] ) )<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if( !isdefined( player.pers["isbot"] ) )<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;player.pers["player_welcomed"] = true;  // player welcomed<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;player thread geo();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}<br />
<br />
geo()<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;level endon("disconnect");<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;location = self getgeolocation (2);<br />
&nbsp;&nbsp;&nbsp;&nbsp;level welcomegeo("^5Welcome^7 " + self.name  + " ^5From " + location);<br />
}<br />
<br />
welcomegeo(text)<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;level endon("disconnect");<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;while(level.welcomegeo) <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wait .05;<br />
&nbsp;&nbsp;&nbsp;&nbsp;level.welcomegeo = true;<br />
&nbsp;&nbsp;&nbsp;&nbsp;msg = addTextHud( level, 750, 5, 1, "left", "middle", undefined, undefined, 1.4, 888 );<br />
&nbsp;&nbsp;&nbsp;&nbsp;msg SetText(text);<br />
&nbsp;&nbsp;&nbsp;&nbsp;msg MoveHud(30,-1300);<br />
&nbsp;&nbsp;&nbsp;&nbsp;wait 15;<br />
&nbsp;&nbsp;&nbsp;&nbsp;msg destroy();<br />
&nbsp;&nbsp;&nbsp;&nbsp;level.welcomegeo = false;<br />
}<br />
<br />
MoveHud(time,x,y)<br />
{<br />
    self moveOverTime(time);<br />
    if(isDefined(x))<br />
        self.x = x;<br />
       <br />
    if(isDefined(y))<br />
        self.y = y;<br />
}<br />
<br />
addTextHud( who, x, y, alpha, alignX, alignY, horiz, vert, fontScale, sort )<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;if( isPlayer( who ) )<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hud = newClientHudElem( who );<br />
&nbsp;&nbsp;&nbsp;&nbsp;else<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hud = newHudElem();<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;hud.x = x;<br />
&nbsp;&nbsp;&nbsp;&nbsp;hud.y = y;<br />
&nbsp;&nbsp;&nbsp;&nbsp;hud.alpha = alpha;<br />
&nbsp;&nbsp;&nbsp;&nbsp;hud.sort = sort;<br />
&nbsp;&nbsp;&nbsp;&nbsp;hud.alignX = alignX;<br />
&nbsp;&nbsp;&nbsp;&nbsp;hud.alignY = alignY;<br />
&nbsp;&nbsp;&nbsp;&nbsp;if(isdefined(vert))<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hud.vertAlign = vert;<br />
&nbsp;&nbsp;&nbsp;&nbsp;if(isdefined(horiz))<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hud.horzAlign = horiz;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;if(fontScale != 0)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hud.fontScale = fontScale;<br />
&nbsp;&nbsp;&nbsp;&nbsp;hud.foreground = 1;<br />
&nbsp;&nbsp;&nbsp;&nbsp;hud.archived = 0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;return hud;<br />
}</code></div></div>]]></content:encoded>
		</item>
	</channel>
</rss>