summaryrefslogblamecommitdiff
path: root/src/map/clif.hpp
blob: df0a48bc6a5c7195544f009ccbff3ca6a89af229 (plain) (tree)
1
2
3
4
5
6
7
8
9

                
 

                     
                     
 
                                    
                                
 
                       
                    
                   
                      
 












                                                      
                                                                      
                                                                      
                                                


                                                               
                         



















                                                                                                         
                                                                           
                                                                
                                                               


                                                         


                                                                 
                                                                                                                  
 
                                                              


                                                                                                                                 


                                                                              



                                                                         
                                                   
                                                       

        


                                                                     
                                                             
                                                                        
                  


                                                               

          

                                                                            
                              
                                                         
                              
                                                                            
                               
                                                                   
                    
                                                   
 




                                                                     
 
                                                                          
                   
                                                     
                                                                 
 
                                                
                                                                            
                   
                                                                     
                                                                      
                                                           
 

                                             
 

                                                                             
 

                                                
 
                                                 
 
                                                                          

        


                                                              
                                      

                                                                                  
                  
                                                                   
                                                    
                                                                                  

                                                                
 
            

                                                                       
                                                       
 

                                                                                                  
 
                                                                           
                  
 
                                                                       
 
                        
 
                  
#ifndef CLIF_HPP
#define CLIF_HPP

#include "clif.t.hpp"

#include <functional>

#include "../common/const_array.hpp"
#include "../common/timer.t.hpp"

#include "battle.t.hpp"
#include "map.t.hpp"
#include "pc.t.hpp"
#include "skill.t.hpp"

void clif_setip(const char *);
void clif_setport(int);

struct in_addr clif_getip(void);
int clif_getport(void);
int clif_countusers(void);
void clif_setwaitclose(int);

int clif_authok(struct map_session_data *);
int clif_authfail_fd(int, int);
int clif_charselectok(int);
int clif_dropflooritem(struct flooritem_data *);
int clif_clearflooritem(struct flooritem_data *, int);
int clif_clearchar(struct block_list *, BeingRemoveWhy); // area or fd
int clif_clearchar_delay(tick_t, struct block_list *, BeingRemoveWhy);
int clif_clearchar_id(int, BeingRemoveWhy, int);
int clif_spawnpc(struct map_session_data *);  //area
int clif_spawnnpc(struct npc_data *); // area
int clif_spawn_fake_npc_for_player(struct map_session_data *sd,
        int fake_npc_id);
int clif_spawnmob(struct mob_data *); // area
int clif_walkok(struct map_session_data *);   // self
int clif_movechar(struct map_session_data *); // area
int clif_movemob(struct mob_data *);  //area
int clif_changemap(struct map_session_data *, const char *, int, int);  //self
int clif_changemapserver(struct map_session_data *, const char *, int, int, struct in_addr, int);  //self
int clif_fixpos(struct block_list *); // area
int clif_fixmobpos(struct mob_data *md);
int clif_fixpcpos(struct map_session_data *sd);
int clif_npcbuysell(struct map_session_data *, int);  //self
int clif_buylist(struct map_session_data *, struct npc_data *);   //self
int clif_selllist(struct map_session_data *); //self
int clif_scriptmes(struct map_session_data *, int, const char *);   //self
int clif_scriptnext(struct map_session_data *, int);  //self
int clif_scriptclose(struct map_session_data *, int); //self
int clif_scriptmenu(struct map_session_data *, int, const char *);  //self
int clif_scriptinput(struct map_session_data *, int); //self
int clif_scriptinputstr(struct map_session_data *sd, int npcid);  // self
int clif_cutin(struct map_session_data *, const char *, int);   //self
int clif_viewpoint(struct map_session_data *, int, int, int, int, int, int);  //self
int clif_additem(struct map_session_data *, int, int, PickupFail);   //self
int clif_delitem(struct map_session_data *, int, int);    //self
int clif_updatestatus(struct map_session_data *, SP);    //self
int clif_damage(struct block_list *, struct block_list *,
        tick_t, interval_t, interval_t,
        int, int, DamageType, int);    // area
inline
int clif_takeitem(struct block_list *src, struct block_list *dst)
{
    return clif_damage(src, dst, tick_t(), interval_t::zero(), interval_t::zero(), 0, 0, DamageType::TAKEITEM, 0);
}
int clif_changelook(struct block_list *, LOOK, int);   // area
void clif_changelook_accessories(struct block_list *bl, struct map_session_data *dst); // area or target; list gloves, boots etc.
int clif_arrowequip(struct map_session_data *sd, int val);    //self
int clif_arrow_fail(struct map_session_data *sd, int type);   //self
int clif_statusupack(struct map_session_data *, SP, int, int);   // self
int clif_equipitemack(struct map_session_data *, int, EPOS, int);  // self
int clif_unequipitemack(struct map_session_data *, int, EPOS, int);    // self
int clif_misceffect(struct block_list *, int);    // area
int clif_changeoption(struct block_list *);   // area
int clif_useitemack(struct map_session_data *, int, int, int);    // self

void clif_emotion(struct block_list *bl, int type);
void clif_sitting(int fd, struct map_session_data *sd);

// trade
int clif_traderequest(struct map_session_data *sd, const char *name);
int clif_tradestart(struct map_session_data *sd, int type);
int clif_tradeadditem(struct map_session_data *sd,
        struct map_session_data *tsd, int index, int amount);
int clif_tradeitemok(struct map_session_data *sd, int index, int amount,
        int fail);
int clif_tradedeal_lock(struct map_session_data *sd, int fail);
int clif_tradecancelled(struct map_session_data *sd);
int clif_tradecompleted(struct map_session_data *sd, int fail);

// storage
int clif_storageitemlist(struct map_session_data *sd, struct storage *stor);
int clif_storageequiplist(struct map_session_data *sd,
        struct storage *stor);
int clif_updatestorageamount(struct map_session_data *sd,
        struct storage *stor);
int clif_storageitemadded(struct map_session_data *sd, struct storage *stor,
        int index, int amount);
int clif_storageitemremoved(struct map_session_data *sd, int index,
        int amount);
int clif_storageclose(struct map_session_data *sd);

// map_forallinmovearea callbacks
void clif_pcinsight(struct block_list *, struct map_session_data *);
void clif_pcoutsight(struct block_list *, struct map_session_data *);
void clif_mobinsight(struct block_list *, struct mob_data *);
void clif_moboutsight(struct block_list *, struct mob_data *);

int clif_skillinfo(struct map_session_data *sd, SkillID skillid, int type,
        int range);
int clif_skillinfoblock(struct map_session_data *sd);
int clif_skillup(struct map_session_data *sd, SkillID skill_num);

int clif_skillcastcancel(struct block_list *bl);
int clif_skill_fail(struct map_session_data *sd, SkillID skill_id, int type,
        int btype);
int clif_skill_damage(struct block_list *src, struct block_list *dst,
        tick_t tick, interval_t sdelay, interval_t ddelay, int damage,
        int div, SkillID skill_id, int skill_lv, int type);

int clif_status_change(struct block_list *bl,
        StatusChange type, int flag);

int clif_wis_message(int fd, const char *nick, const char *mes, int mes_len);
int clif_wis_end(int fd, int flag);

int clif_itemlist(struct map_session_data *sd);
int clif_equiplist(struct map_session_data *sd);

int clif_mvp_effect(struct map_session_data *sd);

int clif_movetoattack(struct map_session_data *sd, struct block_list *bl);

// party
int clif_party_created(struct map_session_data *sd, int flag);
int clif_party_info(struct party *p, int fd);
int clif_party_invite(struct map_session_data *sd,
        struct map_session_data *tsd);
int clif_party_inviteack(struct map_session_data *sd, const char *nick, int flag);
int clif_party_option(struct party *p, struct map_session_data *sd,
        int flag);
int clif_party_leaved(struct party *p, struct map_session_data *sd,
        int account_id, const char *name, int flag);
int clif_party_message(struct party *p, int account_id, const char *mes, int len);
int clif_party_xy(struct party *p, struct map_session_data *sd);
int clif_party_hp(struct party *p, struct map_session_data *sd);

// atcommand
void clif_displaymessage(int fd, const_string mes);
void clif_GMmessage(struct block_list *bl, const_string mes, int flag);
int clif_resurrection(struct block_list *bl, int type);

int clif_specialeffect(struct block_list *bl, int type, int flag);    // special effects [Valaris]
int clif_message(struct block_list *bl, const char *msg);   // messages (from mobs/npcs) [Valaris]

int clif_GM_kick(struct map_session_data *sd, struct map_session_data *tsd,
        int type);

int clif_foreachclient(std::function<void(struct map_session_data *)>);

int do_init_clif (void);

#endif // CLIF_HPP