 |
|

11.06.2016, 09:23
|
|
Участник форума
Регистрация: 21.06.2013
Сообщений: 131
С нами:
6785172
Репутация:
68
|
|
Можно ли изменить цвет сообщений от игроков в чате? с белого на черный допустим?
|
|
|

11.06.2016, 10:05
|
|
Участник форума
Регистрация: 12.07.2013
Сообщений: 161
С нами:
6755146
Репутация:
78
|
|
Сообщение от Frixen
Можно ли изменить цвет сообщений от игроков в чате? с белого на черный допустим?
Ставишь хук на ClientMessage, читаешь параметры (DWORD color, DWORD strLen, char[] msg), записываешь измененные
|
|
|

11.06.2016, 10:23
|
|
Участник форума
Регистрация: 21.06.2013
Сообщений: 131
С нами:
6785172
Репутация:
68
|
|
Сообщение от CarLCas
Ставишь хук на ClientMessage, читаешь параметры (DWORD color, DWORD strLen, char[] msg), записываешь измененные
Оу, не разу не работал с Raknet, можно простенький пример?
|
|
|

11.06.2016, 10:28
|
|
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами:
6603505
Репутация:
183
|
|
Сообщение от Frixen
Оу, не разу не работал с Raknet, можно простенький пример?
https://www.blast.hk/wiki/tutorials:api_lesson_raknet
|
|
|

11.06.2016, 21:29
|
|
Участник форума
Регистрация: 21.06.2013
Сообщений: 131
С нами:
6785172
Репутация:
68
|
|
Проблема в том, что RPC_ScrClientMessage получает\меняет цвет только определенных сообщений типо объявлений на arp и /me, /do, /try, но не сообщений от игрока. Как сделать наоборот?
Вот как все получается:
|
|
|

11.06.2016, 21:39
|
|
Постоянный
Регистрация: 15.12.2013
Сообщений: 412
С нами:
6530249
Репутация:
133
|
|
Сообщение от Frixen
Проблема в том, что RPC_ScrClientMessage получает\меняет цвет только определенных сообщений типо объявлений на arp и /me, /do, /try, но не сообщений от игрока. Как сделать наоборот?
Вот как все получается:
Сканируй строку на "{" цвет "}" и меняй
|
|
|

12.06.2016, 11:28
|
|
Постоянный
Регистрация: 23.06.2015
Сообщений: 411
С нами:
5731627
Репутация:
108
|
|
Какие параметры у RPC Client Check?
|
|
|

12.06.2016, 13:09
|
|
Участник форума
Регистрация: 21.06.2013
Сообщений: 131
С нами:
6785172
Репутация:
68
|
|
C++:
Код:
bool
CALLBACK
incomingRPC
(
stRakNetHookParams
*
params
)
// определение callback-функции которая будет вызвана при отправке какого либо пакета
{
if
(
params
->
packetId
==
RPCEnumeration
::
RPC_Chat
)
// если отправляемый пакет ID_PLAYER_SYNC
{
WORD id
;
byte length
;
char
message
[
248
]
;
byte packet
;
char
buf
[
248
]
;
params
->
bitStream
->
ResetReadPointer
(
)
;
// на всякий случай устанавливаем оффсет чтения на начало
params
->
bitStream
->
Read
(
packet
)
;
// читаем ID пакета
params
->
bitStream
->
Read
(
id
)
;
params
->
bitStream
->
Read
(
length
)
;
params
->
bitStream
->
Read
(
message
,
length
)
;
params
->
bitStream
->
ResetReadPointer
(
)
;
// обнуляем оффсет чтения
sprintf_s
(
buf
,
"{B9C91F}%s"
,
message
)
;
params
->
bitStream
->
ResetWritePointer
(
)
;
params
->
bitStream
->
Write
(
packet
)
;
// читаем ID пакета
params
->
bitStream
->
Write
(
id
)
;
params
->
bitStream
->
Write
(
length
)
;
params
->
bitStream
->
Write
(
buf
,
length
)
;
params
->
bitStream
->
ResetWritePointer
(
)
;
}
;
return
true
;
// успешно завершаем отправку пакета
}
;
Крашит, хочу поменять текст сообщения игроков, никак не получается((
|
|
|

12.06.2016, 13:27
|
|
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами:
6921957
Репутация:
183
|
|
Для РПЦ не нужно читать и записывать ид.
|
|
|

12.06.2016, 13:29
|
|
Участник форума
Регистрация: 21.06.2013
Сообщений: 131
С нами:
6785172
Репутация:
68
|
|
Сообщение от Dark_Knight
Для РПЦ не нужно читать и записывать ид.
даже без ID крашит и не меняет текст
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|