Jump to content

HyperBlown

Gaming Moderator
  • Posts

    837
  • Credits

  • Joined

  • Last visited

  • Days Won

    8
  • Feedback

    100%

Posts posted by HyperBlown

  1. 12 hours ago, Booker Dewitt said:

    I can in private. Aint share info in public to toxic people like the one above you. Thanks and i stop this here. 

    Just a headsup. IF you want to attract a potential "investor/helper" you could atleast make your "project" a bit more attractive to the reader. Put some information, ideas on how you want the server to be in the future or how it is now. And please do understand, a newly created account can and will be suspicious on anything that it asks or tries to "advertise". 

    • Like 1
  2. 10 hours ago, 911reg said:

    Nah, it happens to a lot of people in different devices, in various OS. Plus they don't seem to have that problem in other servers of the same protocol, so it's weird AF, i'm guessing it's a really stupid problem to fix tho

    I had this issue when the first loggable system was released. I changed to a more recent one and it stopped doing that.

    ig use the most recent shared system?

    • Thanks 1
  3. 40 minutes ago, melron said:

    You should consider to fix this code. I won't mention that it's coding style is before java 8, but I will mention the security issue of your bypasses. You can easily get any item with your desired enchant value

    @tensador3 this is a big issue. You could send the obj_id first of the item on the bypass instead of itemid and enchant value and also save the char_id of the person that broke the item in the sql table. Then see if obj_id and char_id exists in sql. Then return the provided item_id and enchant value.

    Also, rework your try catch, I recommend using try with resources. 

  4. On 6/4/2023 at 6:30 PM, Trance said:


    Based on 2 projects means you have ripped what you could from them.

    have you seen the latest 362 sources from scripts? Most of the new "essence" code is ripped from mobius. I compared the code, and its identical on some parts, simply adapted for the l2scripts environment.

    • Haha 1
  5. AttendCheckSlot
     

    class AttendCheckSlot extends UICommonAPI
    	dependson(AttendCheckWnd);
    
    // јэАЪ ЕШЅєГД µЪїЎ 0~9 ±оБц Б¶ЗХЗПї© јэАЪё¦ ёёµл.
    const DATE_TEXTURE_PATH = "L2UI_CT1.AttendCheckWnd.Attend_DateNum_";
    
    var WindowHandle Me;
    var AttendCheckWnd parentWnd;
    var TextBoxHandle itemAmountTextBox;
    var TextureHandle dayFirstTex;
    var TextureHandle daySecondTex;
    var TextureHandle checkedBgTex;
    var TextureHandle highlightTex;
    var TextureHandle stampTex;
    var AnimTextureHandle availableAnimTex;
    var AnimTextureHandle stampAnimTex;
    var ItemWindowHandle itemWnd;
    var WindowHandle disableContainer;
    var AttendCheckWnd.AttendCheckStepInfo _info;
    
    delegate DelegateOnItemClicked(AttendCheckSlot Owner);
    
    function Init(WindowHandle Owner, AttendCheckWnd Parent)
    {
    	local string ownerFullPath;
    
    	ownerFullPath = Owner.m_WindowNameWithFullPath;
    	parentWnd = Parent;
    	Me = GetWindowHandle(ownerFullPath);
    	itemWnd = GetItemWindowHandle(ownerFullPath $ ".AttendMonth_ItemWindow");
    	itemAmountTextBox = GetTextBoxHandle(ownerFullPath $ ".AttendDayCount_TextBox");
    	daySecondTex = GetTextureHandle(ownerFullPath $ ".DateNum_Month_10_Texture");
    	dayFirstTex = GetTextureHandle(ownerFullPath $ ".DateNum_Month_1_Texture");
    	checkedBgTex = GetTextureHandle(ownerFullPath $ ".StampBG_Texture");
    	highlightTex = GetTextureHandle(ownerFullPath $ ".SlotHighlight_Texture");
    	stampTex = GetTextureHandle(ownerFullPath $ ".StampRed_Texture");
    	availableAnimTex = GetAnimTextureHandle(ownerFullPath $ ".TodayTwinkle_AnimTex");
    	stampAnimTex = GetAnimTextureHandle(ownerFullPath $ ".TodayStampRed_AnimText");
    	disableContainer = GetWindowHandle(ownerFullPath $ ".Empty_Wnd");	
    }
    
    function SetInfo(AttendCheckWnd.AttendCheckStepInfo Info)
    {
    	_info = Info;
    	SetDisable(false);
    	SetItemInfoControl(Info.ItemID, Info.ItemAmount);
    	SetDayTexture(Info.Day);
    	SetSlotState(Info.State);
    	SetSlotHighlightControl(Info.isHighLight);	
    }
    
    function SetDisable(bool bDisable)
    {
    	// End:0x39
    	if(bDisable)
    	{
    		itemWnd.HideWindow();
    		itemAmountTextBox.HideWindow();
    		disableContainer.ShowWindow();		
    	}
    	else
    	{
    		itemWnd.ShowWindow();
    		itemAmountTextBox.ShowWindow();
    		disableContainer.HideWindow();
    	}	
    }
    
    function SetItemInfoControl(int ItemID, INT64 ItemAmount)
    {
    	local ItemInfo ItemInfo;
    	local string amountStr;
    
    	ItemInfo = GetItemInfoByClassID(ItemID);
    	// End:0x44
    	if(IsStackableItem(ItemInfo.ConsumeType) && ItemAmount > 0)
    	{
    		ItemInfo.ItemNum = ItemAmount;
    	}
    	itemWnd.Clear();
    	itemWnd.AddItem(ItemInfo);
    	amountStr = "x" $ string(ItemAmount);
    	// End:0x99
    	if(ItemAmount == 0)
    	{
    		itemAmountTextBox.HideWindow();		
    	}
    	else
    	{
    		itemAmountTextBox.SetText(amountStr);
    		itemAmountTextBox.ShowWindow();
    	}	
    }
    
    function SetDayTexture(int Day)
    {
    	local string ten, one;
    
    	StrDaySplit(Day, ten, one);
    	dayFirstTex.SetTexture(DATE_TEXTURE_PATH $ ten);
    	daySecondTex.SetTexture(DATE_TEXTURE_PATH $ one);	
    }
    
    function SetSlotHighlightControl(bool isHighLight)
    {
    	// End:0x1B
    	if(isHighLight)
    	{
    		highlightTex.ShowWindow();		
    	}
    	else
    	{
    		highlightTex.HideWindow();
    	}	
    }
    
    function SetSlotState(AttendCheckWnd.EAttendCheckState State)
    {
    	stampAnimTex.HideWindow();
    	stampAnimTex.Stop();
    	switch(State)
    	{
    		// End:0x72
    		case Checked:
    			checkedBgTex.ShowWindow();
    			stampTex.ShowWindow();
    			availableAnimTex.HideWindow();
    			availableAnimTex.Stop();
    			// End:0x132
    			break;
    		// End:0xE2
    		case Available:
    			checkedBgTex.HideWindow();
    			stampTex.HideWindow();
    			availableAnimTex.ShowWindow();
    			availableAnimTex.Stop();
    			availableAnimTex.SetLoopCount(99999);
    			availableAnimTex.Play();
    			// End:0x132
    			break;
    		// End:0x12F
    		case Unchecked:
    			checkedBgTex.HideWindow();
    			stampTex.HideWindow();
    			availableAnimTex.HideWindow();
    			availableAnimTex.Stop();
    			// End:0x132
    			break;
    	}	
    }
    
    function PlayStampAnimTexture()
    {
    	stampAnimTex.Stop();
    	stampAnimTex.ShowWindow();
    	stampAnimTex.Play();	
    }
    
    function StopAnimation()
    {
    	availableAnimTex.Stop();
    	stampAnimTex.Stop();	
    }
    
    function CheckAndPlayStampAnimation()
    {
    	// End:0x67
    	if(_info.State == Available)
    	{
    		PlayStampAnimTexture();
    		stampTex.ShowWindow();
    		availableAnimTex.HideWindow();
    		availableAnimTex.Stop();
    		_info.State = Checked;
    	}
    }
    
    function StrDaySplit(int nDay, out string ten, out string one)
    {
    	// End:0x31
    	if(nDay > 9)
    	{
    		ten = Mid(string(nDay), 0, 1);
    		one = Mid(string(nDay), 1, 1);		
    	}
    	else
    	{
    		ten = "0";
    		one = string(nDay);
    	}	
    }
    
    event OnClickItem(string strID, int Index)
    {
    	// End:0x4D
    	if(strID == "AttendMonth_ItemWindow" && _info.State == Available)
    	{
    		DelegateOnItemClicked(self);
    	}
    }



    There is no AttendCheckInfo class.

    • Upvote 1
  6. 8 hours ago, Pleyne said:

    To be honest, I come from H5 background and L2Scripts has familiar structure, let's say that.
    I was interested in these files just to get to know Essence overall.
    So basically I sat down for whole Saturday, first of all I've rolled back to JDK8 (originally L2S is JDK8), because these files were 'rookie upgraded to JDK17' and was still missing stuff to be compiled as JDK17.
    Then I went through the features, and what I can say 😄 If you come like me, from H5 background, L2S struct. was easy to understand and maintain. I've implemented that Hunt pass/Season pass/L2 Pass or how it is called, fixed Subjugation system and started working with ensoul system, however, I ran out of time.
    These sources are not bad, I've adapted some Mobius code for those features named above, so it took a bit longer, because Mobius does not have finalized systems on public share, so I had to finish them as well. Some features were corrected by me just in common sense and wiki - how the system works.

    Update: implemented ensoul system as well
     

    So I think this share is useful when it is in the right hands.

    95% of the l2 community doesnt know how to code. So they want ready to use stuff. the same 95% doesnt even have the start capital to hire a decent developer to do these stuff for them. 
    For anyone with knowledge on how stuff works, should be able to make anything work.

  7. 1 hour ago, Re1d said:

    LF someone to fix\help with geodata. Payment will be made.

     

    Discord : #Reid0389

    This source is garbage. Don't even bother using it. So many flaws, missing implementations, etc. And if it is really a clean one, it has alot of issues with ram leaks, dyes, ensoul systems (which are crucial for a essence server...) Your best bet is taking mobius, or buying some "ready to go" essence servers from people (Be aware these might cost you a few bucks.)

×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock