Jump to content

Mumbles

Members
  • Posts

    127
  • Joined

  • Last visited

  • Days Won

    3

Posts posted by Mumbles

  1. Hi there,

    I'm readdressing an issue that I came across on my own server, in which Asura Strike misses its target when used in its combo. Here's a

    of what's happening:

    From what I understand, it's a problem with the source code. I'm running eAthena r15084. If anyone has a solution to this issue or could guide me in the right direction to fixing it, I'd appreciate the help. Thanks in advance.

  2. Is this what you're looking for? eAthena IRC Module, from r13014

    I'm not sure if I simply misread it, but that's not quite what I was aiming at. What I'm essentially trying to accomplish integrating the existing system ( channel.c / channel.h ) that I have with a live IRC channel that I can read and post from. I don't know if it's possible to do so or if it'd be simpler to use the module from r13014. If the latter is the route I should take, could you or someone elaborate as to what I would have to change in order for this to work? I found myself a little distraught when I was saw the attachment from the post you linked was a DIFF file.

  3. My server uses a global IRC-styled system, but I'm not exactly sure how to integrate that into an actual IRC client. Ideally, I'd like to be able to read what's going on in #main at any given time and reply to it even if I don't have an active character online. I don't even know if such a thing is even possible; I barely know how the in-game IRC system works as it is. If someone could point me in the right direction to achieving such a dynamic IRC system - or even confirm that it's impossible within the mechanics of eAthena - it'd be really helpful. Thanks in advance.

  4. Thanks a million Capuche; your revision got the main functions working, and I only came across a few problems:

    • The NPC broadcasts regardless of where you were killed
    • Missing a "space" when the player is announced dead by monster kill
    • The broadcaster cannot be reset

    What I did:

    • Added a setting to allow the GM to define what map would be broadcasted on
    • Added a check to make sure a map was defined
    • Changed the announcements to only be broadcasted on the defined map
    • Added a check to make sure the person killed was on the defined map before announcing
    • Added a status dialogue upon calling the NPC to display which modes are active on what map
    • Add a reset option to completely reset the NPC for the next GM to use
    • Added status display in the menu to show changes made instantly

    Again, thank you; you've been a big help. I've released the finished version for free in the Script Releases forum. Enjoy! (:

  5. File Name: Flavor Text Death Announcer

    File Submitter: Via

    File Submitted: 23 Jan 2013

    File Category: Utilities

    Content Author: Via

    A customizable death announcer that broadcasts on the map pre-defined by the GM configuring the NPC's settings. It helps GMs keep track of player death when hosting events styled to have a last-man-standing winner while adding a creative flair to each situation.

    It is written so that an announcement with "flavor text" is broadcasted when a player is killed by either a monster or another player. To avoid duplicate announcements, the previous mode is disabled upon activating a new mode.

    The current release, 1.0, is activated by "whispering" a string of any text to "npc:death". Doing so calls the config panel to set the NPC according to your needs.

    152yohv.png

    2eqc1t5.png

    91h45u.png

    97qo1g.png

    25ssxlw.png

    rcsi2g.png

    Download this file here: Utility: Flavor Text Death Announcer

    Mirror: Utility: Flavor Text Death Announcer - Google Project Hosting

  6. I'd like to create an NPC that uses a death announcer similar to the ones included in AnnieRuru's posts in a different thread for the purpose of helping event GMs keep a track of deaths while maintaining a creative flair. Ideally, the announcements would be local broadcast and configured by the GM upon whispering anything to npc:death. In theory, it'd look a little something like this:

    -	script	death	-1,{
    
    OnInit:
    set .npcname$,"[Death Announcer]";	// Define the NPC's name
    
    OnWhisperGlobal:
    if (getgmlevel() >= 40) {
    AnnounceMenu:
    	mes .npcname$;
    	mes "There are several settings for this controller.";
    	mes "Only one announcer may be active at all times.";
    	mes "What would you like to do?";
    	menu "Set Flavor Text",FlavorText,"Mob Announcer",MobAnnouncer,"PK Announcer",PKAnnouncer,"Nothing",Nothing;
    
    Nothing:
    	close;
    
    FlavorText:
    	next;
    	mes .npcname$;
    	mes "Pleae input the text you would like to appear when a player is killed.";
    	mes "^AAAAAAExample: Player <had his brains eaten>!^000000"; // @FlavorText$ would replace < >
    	input @FlavorText$;
    	next;
    	mes .npcname$;
    	mes "The message that will be broadcasted when a player dies is:";
    	mes "^FF0000Player "+@FlavorText$+"!^000000";
    	mes " ";
    	mes "Is that correct?";
    	menu "Yes, that's fine",CorrectFlavor,"No, let me change it",FlavorText,"Nevermind",Nothing;
    
    CorrectFlavor:
    	set $flavor,1;	// At this point, Flavor Text has been defined
    	goto AnnounceMenu;
    
    MobAnnouncer:
    	if ($flavor != 1) {	// Check if Flavor Text has been defined yet
    		next;
    		mes .npcname$;
    		mes "I'm sorry, but you haven't set the Flavor Text yet!";
    		next;
    		goto AnnounceMenu;
    	}
    	else {
    		if ($mobactive == 1) {
    			next;
    			mes .npcname$;
    			mes "The Mob Announcer is currently active.";
    			mes "Would you like to disable it?";
    			menu "Yes",DeactivateMob,"No",AnnounceMenu;
    
    DeactivateMob:
    			next;
    			mes .npcname$;
    			mes "The Mob Announcer has been deactivated.";
    			set $mobactive,0;	// Define the Mob Announcer as "inactive"
    			goto AnnounceMenu;
    		}
    		else {
    			next;
    			mes .npcname$;
    			mes "Would you like to enable the Mob Announcer?";
    			mes "This will broadcast player deaths when they're killed by monsters.";
    			menu "Yes",ActivateMob,"No",AnnounceMenu;
    
    ActivateMob:
    			next;
    			mes .npcname$;
    			mes "The Mob Announcer has been activated.";
    			set $pkactive,0;	// Define the PK Announcer as "inactive"
    			set $mobactive,1;	// Define the Mob Announcer as "active"
    			goto AnnounceMenu;
    		}
    
    PKAnnouncer:
    		if ($flavor != 1) {	// Check if Flavor Text has been defined yet
    			next;
    			mes .npcname$;
    			mes "I'm sorry, but you haven't set the Flavor Text yet!";
    			next;
    			goto AnnounceMenu;
    		}
    		else {
    			if ($pkactive == 1) {
    				next;
    				mes .npcname$;
    				mes "The PK Announcer is currently active.";
    				mes "Would you like to disable it?";
    				menu "Yes",DeactivatePK,"No",AnnounceMenu;
    
    DeactivatePK:
    				next;
    				mes .npcname$;
    				mes "The PK Announcer has been deactivated.";
    				set $pkactive,0;	// Define the PK Announcer as "inactive"
    				goto AnnounceMenu;
    			}
    			else {
    				next;
    				mes .npcname$;
    				mes "Would you like to enable the PK Announcer?";
    				mes "This will broadcast player deaths when they're killed by other players.";
    				menu "Yes",ActivatePK,"No",AnnounceMenu;
    
    ActivatePK:
    				next;
    				mes .npcname$;
    				mes "The PK Announcer has been activated.";
    				set $mobactive,0;	// Define the Mob Announcer as "inactive"
    				set $pkactive,1;	// Define the PK Announcer as "active"
    				goto AnnounceMenu;
    			}
    
    			// Announcers
    			if ($mobevent == 1) {
    OnPCDieEvent:
    				announce strcharinfo(0) + @FlavorText$ +"!",bc_map;	// Announce player death by monster
    				end;
    			}
    			else {
    				if ($pkevent == 1) {
    OnPCKillEvent:
    					set .@name$, strcharinfo(0);
    					attachrid killedrid;
    					announce strcharinfo(0)+" "+@FlavorText$+" by "+.@name$+"!",bc_map;	// Announce player death by PK
    					end;
    				}
    			}
    		}
    	}
    }
    else {
    	dispbottom "You are not authorized to use this feature.";	// Reject player access
    	end;
    }	
    }

    Status:

    I wrote this myself lol, it's not fully functional. The way its written, it does broadcast upon death, but it's excluding the @FlavorText$ input and announces twice; my intent for two announcements is so that if one is activated, the other is deactivated immediately. In addition, the NPC's name doesn't show up and the AnnouncerMain dialogue floods the previous window. If anyone can provide some constructive feedback in favor of fixing this script, I'd really appreciate it.

×
×
  • Create New...